nginx配置多个server监听80端口

2022-06-14 16:18:54 浏览数 (1)

有时候需要部署很多个服务时,如果不想让域名的后面带上端口号这个问题应该怎么做呢,实际也是有这样的场景的,本小节来做一个学习

这个时候最主要的就是要在nginx.conf中来进行配置了 服务一server配置

代码语言:javascript复制
    server {
        listen       80;
        server_name  missbe.cn;
        root         /usr/share/nginx/html;

        location / {
            proxy_redirect off;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://missbe.cn:8090;
        }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

注意这里的server_name需要填写哪个域名访问,如果有多个则可以进行配置多个

如果还需要80端口来监听另外一个域名,则可以直接把server_name改成你要访问的域名即可。

代码语言:javascript复制
   server {
        listen       80;
        server_name  doc.missbe.cn;
        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.

        location / {
            proxy_redirect off;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://missbe.cn:8088;
        }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

如果需要用80端口监听并跳转到后端项目中的话可以在location中进行配置

代码语言:javascript复制
 server {
    listen 80;
    server_name leanote.XXXX.com;
    access_log /data/wwwlogs/access_nginx.log combined;
    root /webapp/docs/we2012wuhan.github.io-main/docs;
    index index.html index.htm index.php;
    #error_page 404 /404.html;
    #error_page 502 /502.html;
    location /nginx_status {
      stub_status on;
      access_log off;
      allow 127.0.0.1;
      deny all;
    }
 
        location / {
            proxy_redirect off;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://leanote.XXX.com:9000;
        }

  }
HttpProxy模块

此模块专们将请求导向其它服务.

示例:

代码语言:javascript复制
location / {
: proxy_pass        http://localhost:8000;
: proxy_set_header  X-Real-IP  $remote_addr;
}
https配置

如果是要配置https的话需要配置443端口,并且需要配置证书的路径,需要先购买一个ssl证书,一般个人用可以用一些免费的ssl证书

0 人点赞