Apache服务器上的反向代理,无需访问配置文件

时间:2019-08-10 11:02:48

标签: php node.js apache proxy

主机提供程序的默认Apache配置运行在端口号80上。由于无法更改Apache配置,因此必须使用domain.name:port访问在同一服务器上运行的Node应用程序。

可以使用哪种反向代理来拦截传入的请求并将其转发到特定端口?例如:

domain1.name:80 -> default (domain1dir/index.php)
domain2.name:80 -> localhost:8001 (NodeJS)
domain3.name:80 -> localhost:8002 (NodeJS)

由于Node无法与Apache并行侦听端口号80,所以我想到只有PHP反向代理。在PHP中是否存在相对简单的解决方案,还有其他选择吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试以下操作:在网站的根文件夹中,创建名为.htaccess的文件,其内容如下:

RewriteEngine On
RewriteCond %{HTTP_HOST} =domain2.name
RewriteRule ^ http://localhost:8001{REQUEST_URI} [P]
RewriteCond %{HTTP_HOST} =domain3.name
RewriteRule ^ http://localhost:8002{REQUEST_URI} [P]

(这需要托管服务提供商启用mod_proxymod_rewrite