将express设置为仅从子目录

时间:2018-01-01 00:42:08

标签: node.js apache .htaccess express

假设我在http://example.com安装了基本的PHP站点。然后,在http://example.com/groovy,我们在Node上运行了一个express.js应用程序。

我的应用程序在默认快速端口:3000上运行。我希望我们可以访问http://example.com/groovy:3000并查看http://localhost/groovy:3000处的同一网页。但事实并非如此。

相反,我只能通过http://example.com:3000访问/ groovy网站。这完全忽略了子目录。

我预计部分设置与Apache httpd.conf文件有关。由于我不确切知道,我最好的赌注是猜测和检查(非常低效)。

以下是当前设置:

<VirtualHost *:80>
    Servername example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/example.com
</VirtualHost>

^这提供了常规的PHP站点。然后转到/ groovy应该提供Node / express.js站点。

此外,我还没有找到在URL中不需要端口号的正确方法。我希望能够转到http://example.com/groovy并获得express.js内容。

我尝试在基本网址.htaccess中设置一些重写规则,就像这样

RewriteEngine On
RewriteRule groovy http://example.com:3000

但这还没有成功。还有其他建议吗?

1 个答案:

答案 0 :(得分:0)

您应该使用ProxyPassProxyPassReverse指令将请求传递给代理服务器,Express app。

%