我在 DigitalOcean 上有一个 Ubuntu 14.04 x86 droplet,带有 Apache 2.4.7(Ubuntu 存储库中的默认版本)。此外,我在端口 3000 上运行一个 Node.js 应用程序,并且想要将/node*
根路径映射到/*
Node.js 服务器(使用 Express)。
我尝试过的:
- 已
mod_proxy
启用a2enmod proxy
。 - 修改并在末尾
/etc/apache2/sites-available/000-default.conf
添加一行。ProxyPass /node http://localhost:3000/
VirtualHost
我得到的是:
/node
代理到http://localhost:3000/
。/node/help
代理http://localhost:3000/
(其中是不正确的)。
为了实现这一点,我还需要做其他修改吗?提前致谢!
答案1
我发现我已经strict routing
在 Express 中设置了,但是它不能容忍//help
这种情况。
解决方案:
省略指令中的尾部斜杠ProxyPass
,如下所示:
ProxyPass /node http://localhost:3000