我是靠谱客的博主 老迟到小馒头,最近开发中收集的这篇文章主要介绍nginx配置反向代理时的路径问题Nginx配置反向代理的路径问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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

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

一张图解决我的配置难题

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

在这里插入图片描述

自己的理解

  • http下,可配置多个server虚拟主机
  • 每个server中,可配置多个location地址
http块

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

server块

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

location块

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

静态资源配置

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

root:会保留匹配的路由路径

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

alias:会舍去匹配的路由路径

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; 
  }

最后

以上就是老迟到小馒头为你收集整理的nginx配置反向代理时的路径问题Nginx配置反向代理的路径问题的全部内容,希望文章能够帮你解决nginx配置反向代理时的路径问题Nginx配置反向代理的路径问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部