使用Nginx做反向代理,一台服务器多用

之前在准备公众号后台的搭建,可是问题来了,微信公众号后台服务器URL地址只支持80和443端口而我仅有的一台服务器的80和443端口都被我的博客占用了,穷学生再供不起第二台服务器。于是我只有再寻求nginx反向代理的帮助,将所用东西配置好后我的nginx配置文件之这样的,在注释里有相应的语句解释。我的服务器系统是centos7,nginx配置文件地址为 /etc/nginx/conf.d/***.conf

server {
    listen 80; #监听80端口
    server_name www.wavedeng.com; #服务器域名
    rewrite ^ https://$http_host$request_uri? permanent; #重写80端口为443端口,即重写http到https,permanent 代表发送301表示永久地址迁移

}

server{

    listen 443 ssl; #监听https请求
       server_name www.wavedeng.com; #服务器域名
    ssl_certificate ssl/1_www.wavedeng.com_bundle.crt; #ssl证书crt文件或pem文件

    ssl_certificate_key ssl/2_www.wavedeng.com.key; #ssl证书key文件

      #所有路由为/wechat/开头的地址都传给localhost:3000,是我的微信后台本地地址

    location /wechat/{

        proxy_pass http://localhost:3000/;

        proxy_http_version 1.1;

        proxy_set_header Upgrade $http_upgrade;

        proxy_set_header Connection keep-alive;

        proxy_set_header Host $host;

        proxy_cache_bypass $http_upgrade;
    }

   

      #其余路由传给localhost:5000,这里是我的个人网站本地地址

    location / {

        proxy_pass http://localhost:5000;

        proxy_http_version 1.1;

        proxy_set_header Upgrade $http_upgrade;

        proxy_set_header Connection keep-alive;

        proxy_set_header Host $host;

        proxy_cache_bypass $http_upgrade;

    }

}

 

 

注意:

1.监听的对应路由如上面的 /wechat/ 一定要写成 /wechat/ 不能写成 /wechat具体原因在

nginx 之 proxy_pass详解​blog.csdn.net

 

里有描述

 

2.在/etc/nginx/con.d/**.conf中修改你nginx的配置文件之后,首先使用

nginx -s reload 

重新加载nginx配置(reload之后的配置并没有生效,需要重启nginx)

然后保证配置文件中location里面 proxy_pass中的地址端口暂时不被占用

使用

systemctl restart nginx

重启nginx之后,再开起location中proxy_pass中相应的服务。

 

 

同时之前开发的小游戏要上线了,由于这次的小游戏使用了websocket,我这台可怜的服务器也要配置wss,不过好在微信小游戏的后端端口没有限定在443,所以只需配置相应端口的wss就行了,在/etc/nginx/conf.d/文件目录下创建game.conf 内容如下

#map的作用在最下面的"nginx map使用方法"中查看
map $http_upgrade $connection_upgrade {
default upgrade;

'' close;
}

upstream websocket {
  server localhost:2000; #真正的websocket端口
}


server {

  listen 8000 ssl;

  server_name www.wavedeng.com;


  ssl_certificate ssl/1_www.wavedeng.com_bundle.crt;
  ssl_certificate_key ssl/2_www.wavedeng.com.key;
  ssl_session_timeout 20m;

  ssl_verify_client off;

  location / {

    proxy_pass http://websocket;

    proxy_http_version 1.1;

    proxy_set_header Upgrade $http_upgrade;

    proxy_set_header Connection "Upgrade";

  }
} 

nginx 之 proxy_pass详解​blog.csdn.net

 

一个服务器多用在荷载比较大情况下肯定是承受不住的,但是买多个服务器并备案配置对于学生的精力与财力都是极大的消耗,所以当一个服务器能够支持目前的荷载的情况下利用代理服务器的方式是个很好的选择。

 

原文地址

使用Nginx做反向代理,一台服务器多用

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值