nginx

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > nginx > nginx配置反向代理路径问题

nginx配置反向代理时遇到的路径问题

作者:櫆溟

这篇文章主要介绍了nginx配置反向代理时遇到的路径问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Nginx配置反向代理的路径问题

新搞了台服务器,开始部署下项目,但是使用域名加端口访问很不给力,决定使用Nginx的反向代理,统一到443端口。但我对Nginx的的了解可以说是完全不了解,那只能通过百度来看看能不能解决问题了

一张图解决我的配置难题

之前找的图,我的反向代理基本靠它解决

自己的理解

http块

Nginx配置中最重要的部分,缓存和日志、反向代理、动态和静态资源分离、负载均衡都在这里配置。

server块

一个server相当于一台虚拟的主机,通过监听客户端传来的端口和地址,然后将这条请求定向到自己location中指定地址

location块

server监听到请求后,对server_name后的字符路径进行匹配,如果匹配成功,就可执行重定向、数据缓存和应答控制的等功能

静态资源配置

假设请求路径为 https://test.xyz/static/test.jpg

location /static { 
    # 设置静态资源路径(相对路径),查询的路径为/{nginx路径}/html/static/test.jpg
	root html/;
    # 设置静态资源路径(绝对路径),查询的路径为/var/www/wwwroot/html/static/test.jpg 
    # root /var/www/wwwroot/html/ 
}
location /static {
    # 设置静态资源路径(相对路径),查询的路径为/{nginx路径}/html/test.jpg
	alias html/;
    # 设置静态资源路径(绝对路径),查询的路径为/var/www/wwwroot/html/test.jpg 
    # alias /var/www/wwwroot/html/ 
}

实际配置

server
    {
        listen 443 ssl;
    	# 自己的域名
        server_name test.xyz;
    	# 设置SSL证书
        ssl_certificate test.xyz_bundle.crt;
        ssl_certificate_key test.xyz.key;
        ssl_session_timeout 5m;
        #请按照以下协议配置
        ssl_protocols TLSv1.2 TLSv1.3; 
        #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; 
        ssl_prefer_server_ciphers on;
    	# 如果请求中的路由为/hot_wall
        location /hot_wall{
          # 将/hot_wall路由后面的路径全部定向到8800端口上,并不包含/hot_wall
          proxy_pass http://127.0.0.1:8800/;
        }
    }
    server {
      listen 80;
      #自己的域名
      server_name test.xyz; 
      #把http的域名请求转成https
      return 301 https://$host$request_uri; 
  }

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文