运营用的服务器有两个域名,其中一个域名A申请了SSL证书导致另一个B报不安全,但能访问。可是由于原来的开发逻辑包含微信授权,用的是域名B(划重点啊,不按设计模式的后果),导致一直无法进行授权,而微信的授权域名更改需要备案,A还正在备案中,又不想改一堆的域名,所以想到了nginx的反向代理软件
nginx作为一个小巧的web服务器,更出名的则是他的反向代理功能,并且在写下这些文字的时候正在一步步蚕食IIS,Apache等反向代理的市场。由于运营服务器是windows系统(巨坑),所以下载windows版本的nginx后按网上博文的步骤就可以安装完毕。
Nginx的代理设置在nginx.conf文件夹里的server标签里
例如:1
2
3
4
5
6
7
8
9
10
11server {
listen 80;
server_name www.feidikj.xyz;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://127.0.0.1;
index index.html index.htm;
}
}
这样操作会报一个500的错误
worker_connections are not enough while connecting to upstream
问题就在与nginx本身在监听80端口,而跳转的则又是80端口,有这样一个循环在,跳转的次数会不断增加,当超过固定的worker-connection时就会报错
这是正确的配置方法1
2
3
4
5
6
7
8
9
10
11server {
listen 80;
server_name www.feidikj.xyz;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass https://www.feidikj.com;
index index.html index.htm;
}
}
跳转的域名需要在计算机系统的host文件中指明是哪一个ip地址
这样就可以正确工作了~