背景 :
iis上挂着公司的主页,用的是80端口, 我做了一个微信小程序的后台用tomcat作为服务器,微信小程序访问后台强制使用80端口,所以问题产生了,80端口占用问题。一开始用到的是isapi_redirect-1.2.27.dll来进行配置,各种配置之后,还是端口占用,重复操作后放弃!!!
正题:
网址:http://nginx.org/en/download.html
找一个适合自己服务器的版本,本人下载的是nginx-1.15.2版本,
解压下载的nginx,打开文件夹,找到nginx.exe 双击运行,这时候会一闪而过,其实是已经安装好了。
说明:80端口必须留给nginx使用,具体配置在下方说明
上面提到iis挂的域名为www.xxxooo.cn 原来端口为80,修改端口号为81(你愿意修改成啥就是啥)。
打开Internet信息服务管理,右击80端口占用网站选择“属性”,如下图,修改端口为81.确定即可。
小程序后台域名为www.sssbbb.cn 原来端口为8080,端口修改为82。
打开tomcat的conf下的server.xml打开,只需要修改一下内容(红色):
connectionTimeout="20000"
redirectPort="8443" />
在
以上tomcat配置完成
打开D:\nginx-1.15.2\conf找到nginx.conf文件txt方式打开进行配置,配置代码如下:
重要:一下代码为了看着方便已经把注释全部去掉,红色主要修改内容!!!
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;#监听80请求
server_name www.xxxooo.cn;#代理iis上的域名
location / {
proxy_pass http://www.xxxooo.cn:81;#请求转发到实际的端口号为81
}
}
server {
listen 80;
server_name www.sssbbb.cn;#代理tomcat下的域名
location / {
proxy_pass http://www.sssbbb.cn:82;#请求转发到实际的端口号为82
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
以上nginx配置完成!!
win+r 输入cmd 回车,
关闭iis服务:net stop iisadmin /y
启动iis服务:net start iisadmin
启动w3svc:net start w2svc
win+r 输入cmd 回车,
用cd命令进入到 D:\nginx-1.15.2下
输入nginx.exe回车,此时会一闪而过,打开任务管理器会有如下两个进程,表示已经启动了(如果没有,那么你就要看 第二步了),如下图:
重启后分别访问www.xxxooo.cn、www.sssbbb.cn都是可以访问的,说明你成功了。
but、but、but!!!因为有些事情你就算是按部就班的做了也不尽人愿,如果你出现以下情况,请对症下药!!
二、80端口的调皮
我们就算是按照以上步骤调试完毕了,有可能会出现80端口被占用,占用着PID是4,也就是SYSTEM占用的,恶心,呕,因为停不掉啊,不要紧,别慌,咱们又简单粗暴地良药:
药方:
cmd下输入regedit打开注册表,找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP
找到如上图的start,右键,将原值“3”改为“0”,
修改完毕后点击确定,必须要重启电脑,如果是服务器不在身边那么一定要注意,不要点错成关机了,如果关机了只能去机房手动开机了,cmd命令给你了:shutdown -r,这个是重启电脑的命令,快说我细心,快!!!
重启后,然后重启你的iis、tomcat、nginx,一定要看看你的网站起来了没有,起来了,一般就不会有什么问题了,总结完毕。