nodejs微信公众号端口问题解决方案

来源:互联网 发布:oracle查找重复数据 编辑:程序博客网 时间:2024/04/30 06:57

一:背景

发布网站的方式有很多种:

 php 有:IIs+php+mysql、apache+php+mysql 、nginx+php-cgi+mysql
    jsp 有: iis+jre+tomcat

Nodejs可以不借助第三方发布方式,自己指定端口号,启动服务器。

二:矛盾冲突

Nodejs 一般使用非80端口

微信公众号要求域名80端口或443端口

443端口即网页浏览端口,主要是用于HTTPS服务,是提供加密和通过安全端口传输的另一种HTTP。在一些对安全性要求较高的网站,比如银行、证券、购物等,都采用HTTPS服务,这样在这些网站上的交换信息,其他人抓包获取到的是加密数据,保证了交易的安全性,网页的地址以https://开始,而不是常见的http://。

我们项目没有像银行、证券、购物等的业务,加密方式也给微信公众号的开发增加了难度,因此最终不使用443端口,而确定使用80端口。

我们的项目是搭建在腾讯云服务器上的,系统是Windows Server 2012 R2,服务器自带了iis,而iis占用了80端口,如何将iis的80端口改成nodojs的80端口呢?

三:解决方案

1 运行'netstat -ano'发现80端口被pid=4的进程占用

2 打开任务管理器,发现pid=4的进程,其实是system进程,其对应的进程描述是NT kernel & system。

3 如何清除呢?需要使用注册表,开始-》运行-》regedit

4 找到HKEY_LOCAL_MACHINE目录

5 找到System   

6 找到CurrentControlSet-Services

7 再找到http-start

8 打开,将3改为4,确定

9 重启电脑,就解除了NT Kernel & System占用80端口

然后重新启动nodejs服务器,打开浏览器,输入localhost或内网ip回车后,就会看到成功页面,使用外网浏览器访问时注意防火墙的配置

原创粉丝点击