CNode

nginx如何配置两个express应用分别在不同的二级目录下

Mmz121star发布于13 年前最后回复12 年前5 回复13562 浏览0 收藏

想实现的方法大概如下所示,有两个express应用分别在4000和5000端口,想在外网只通过80端口访问,通过不同的二级目录访问,比如 http://Domain/xxx
http://Domain/yyy

分别转发到4000和5000的应用上。 nginx的大概配置如下,可是目前通过这样访问expressjs会提示cannot get / 请问如何处理?

location /xxx{ root /home/aaa/xxx; proxy_pass http://127.0.0.1:4000; }

location /yyy{ root /home/aaa/yyy; proxy_pass http://127.0.0.1:5000 }

查看回复

回复 (3)

S
shanelau#1·12 年前

楼主 我遇到相同的问题,也按照这种方式配置了。

location /app { rewrite /app/(.*) /$1 break; proxy_pass http://localhost:3000; ...... }

的确我访问 http://121.14.58.212/app 时跳转到我的主页了。 但是我主页需要的静态文件,全部404了。 我期望的应该是访问 http://121.14.58.212/app/style.css, 实际请求的地址为http://121.14.58.212/style.css

跪求告诉怎么解决

M
mz121star#2·13 年前

目前只有一个80端口对外暴漏,

M
mz121star#3·13 年前

搞定 location /app { rewrite /app/(.*) /$1 break; proxy_pass http://localhost:3000; proxy_redirect off; proxy_set_header Host $proxy_host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }

参与回复
登录后即可参与回复。登录