nodejs反向代理
⑴ nginx反向代理nodejs服务器不成功
通过9009和9008端口访问得到结果一致
判断应该是node服务器没有 /x/y目录,所以404了
⑵ nodejs 如何部署到服务器上
两点:第一是否来是线上服务自,第二是否需要守护进程;
第一点,如果是线上服务,毫无疑问需要一个守护进程来保证,发生意外导致进程退出后,能重新启动,提供服务;当然就需要pm2等守护进程来启动,使用方法请自行参照github;第二点,是否需要守护进程,如果不需要,那么直接node启动即可;如果需要,也不必担心pm2启动进程后并不会抢占服务器资源,如果你的server有很大的需求,毋庸置疑需要更多的内存和cpu,如果没有很大需求,pm2会基于linux的资源调度策略,并不会抢占;
⑶ nginx nodejs反向代理怎么配置
1.安装nodejs,之前就安装了。
2.安装nginx ,我采用的直接源码安装
3.进入 /usr/local/nginx/conf 目录,在该目录下创建include 文件下,我的配置文件就写在这个文件夹里面
4.进入 /usr/local/nginx/conf/include 目录,创建 nginx.node.conf 文件,在里面输入如下代码:
upstream nodejs {
server 127.0.0.1:3000;
#server 127.0.0.1:3001;
keepalive 64;
}
server {
listen 80;
server_name www.penguu.com penguu.com;
access_log /var/log/nginx/test.log;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Nginx-Proxy true;
proxy_set_header Connection "";
proxy_pass http://nodejs;
}
}
5.进入/usr/local/nginx/conf ,打开nginx.conf, 在http 里面添加 include /usr/local/nginx/conf/include/*
6.重启nginx , 输入 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
在浏览器输入penguu.com ok.
⑷ 如何让apache和nodejs共用80端口
反向代理可以实现这个功能,下面是详细的步骤:
步骤一:
查看httpd.conf是不是加载了mod_proxy.so,mod_proxy_http.so二个模块
LoadMoleproxy_molemoles/mod_proxy.so
LoadMoleproxy_http_molemoles/mod_proxy_http.so
步骤二:
配置apache的一个虚拟机
<VirtualHost*:80>
ServerAdminadmin@localhost
ServerNameangularjs.stagingserver.com.au
ProxyRequestsoff//off表示反向代理
<Proxy*>
Orderdeny,allow
Allowfromall//proxy的访问控制
</Proxy>
<Location/>
ProxyPasshttp://localhost:8000///反向代理到本地nodejs占用8000端口
ProxyPassReversehttp://localhost:8000///反向代理到本地nodejs占用8000端口
</Location>
</VirtualHost>
步骤三:
检查配置是否正确,并重新加载
[root@hatch~]#apachectl-t
SyntaxOK
[root@hatch~]#/etc/init.d/httpdreload
Reloadinghttpd: