nginx转发tsrpc服务端的配置

要在宝塔上部署tsrpc服务端,需要在宝塔面板上安装nodejs项目。
开启外网映射之后,需要在宝塔面板上配置nginx的反向代理。

默认宝塔面板的nginx配置文件中已经有了反向代理的配置,因为涉及到CORS转发,所以需要在配置文件中添加三行配置即可,
使其变成:

    # HTTP反向代理相关配置开始 >>>
    location ~ /purge(/.*) {
        proxy_cache_purge cache_one $host$request_uri$is_args$args;
    }

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host:$server_port;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header REMOTE-HOST $remote_addr;
        add_header X-Cache $upstream_cache_status;
        proxy_set_header X-Host $host:$server_port;
        proxy_set_header X-Scheme $scheme;
        proxy_connect_timeout 30s;
        proxy_read_timeout 86400s;
        proxy_send_timeout 30s;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    proxy_pass_header Access-Control-Allow-Origin;
    proxy_pass_header Access-Control-Allow-Methods;
    proxy_pass_header Access-Control-Allow-Headers;
    }
    # HTTP反向代理相关配置结束 <<<

但是宝塔创建的nodejs项目,默认的nginx配置文件中会把项目的端口(比如3000)和对web对外端口80都监听,导致无法正常启动nodejs项目。
所以需要修改nginx配置文件,把监听项目3000端口的配置注释掉。如下:

server
{
    # listen 3000;
    listen 443 ssl http2 ;
    listen 80;
    server_name 121.41.91.7 sver.oeoai.com;
    index index.html index.htm default.htm default.html;
    #root /www/wwwroot/rcshop-management/dist;
    #CERT-APPLY-CHECK--START
    # 用于SSL证书申请时的文件验证相关配置 -- 请勿删除
    include /www/server/panel/vhost/nginx/well-known/dist.conf;
    #CERT-APPLY-CHECK--END
    #...    

技术内容转载请注明来源,个人日记不允许转载,欢迎指出任何有错误或不够清晰的表达。可以邮件至 mousebomb@gmail.com