如何让apache和nodejs共用80端口

如题所述

反向代理可以实现这个功能,下面是详细的步骤:

步骤一:

查看httpd.conf是不是加载了mod_proxy.so,mod_proxy_http.so二个模块

LoadModule proxy_module modules/mod_proxy.so  
LoadModule proxy_http_module modules/mod_proxy_http.so

步骤二:

配置apache的一个虚拟机

<VirtualHost *:80>  
        ServerAdmin admin@localhost  
        ServerName angularjs.stagingserver.com.au  
  
        ProxyRequests off     //off表示反向代理  
  
        <Proxy *>  
                Order deny,allow  
                Allow from all      //proxy的访问控制  
        </Proxy>  
  
        <Location />  
                ProxyPass http://localhost:8000/         //反向代理到本地nodejs占用8000端口  
                ProxyPassReverse http://localhost:8000/  //反向代理到本地nodejs占用8000端口  
        </Location>  
</VirtualHost>

步骤三:

检查配置是否正确,并重新加载

[root@hatch ~]# apachectl -t  
Syntax OK  
  
[root@hatch ~]# /etc/init.d/httpd reload  
Reloading httpd:

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-09-19
apache/IIS共用80端口四法为调试程序,本机安装iis与apache,无法同时使用80端口,现给出解决方法:方法一:IIS5,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2原文地址c:\Inetpub\Adminscriptscscriptadsutil.vbssetw3svc/disablesocketpoolingtrue该命令反馈如下disablesocketpooling:(BOOLEAN)True重启IISInetpub\AdminScripts>cscriptadsutil.vbssetw3svc/disablesocketpoolingtrue由于DisableSocketPooling在IIS6.0元数据库架构(MBSchema.xml)中被定义为有效属性,所以,您仍然可以使用Adsutil.vbs设置该属性,但这种设置不起作用。IIS6.0中的功能是新增的核心级别驱动程序HTTP.sys的一部分。要配置HTTP.sys,您必须使用Httpcfg.exe参考:

nodejs如何检查哪个IP访问80端口
1,首先将node的主程序绑定到高于1024端口,比如8090,这样普通用户就可以启动这个http server了,只不过不是在默认的80端口上监听;2,配置iptables将80端口转发到8090上,如下命令:iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8090 该命令的意思就是在iptable中添加...

如何让node在ubuntu上占据80端口
有三种方法:1:通过sudo。因为系统默认非root用户,不能使用1024以及小于它的端口 2: 通过iptables重定向到别的端口:sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3000 3: 给一个普通用户,有想root用户一样使用sockets的能力。sudo apt-get ins...

lighttpd的其他web服务可否与websocket服务共用80端口
做法跟提供HTTP服务一样。如果提供websocket的是lighttpd,就直接是同一个端口了;如果提供websocket的是其他服务器,如nodejs,java...的话,就反代到80端口咯。至于区分其他HTTP服务和websocket服务就通过不同的请求路径来实现就可以了。websocket的请求报头是这样的:GET \/demo HTTP\/1.1 Host: example....

如何让node在ubuntu上占据80端口
有三种方法:1:通过sudo。因为系统默认非root用户,不能使用1024以及小于它的端口 2: 通过iptables重定向到别的端口:sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3000 3: 给一个普通用户,有想root用户一样使用sockets的能力。sudo apt-get ins...

相似回答