Apache httpd上的选择性代理端口转发

时间:2013-09-01 17:34:05

标签: wordpress apache node.js httpd.conf portforwarding

我正在尝试将wordpress集成到我的站点,该站点在Nodejs服务器上运行,启用Apache Httpd端口转发,将所有请求从80端口转发到Nodejs端口9000.我已将wordpress安装到Apache httpd / www / blog文件夹中。

现在,我想编辑我的httpd.conf,以便来自客户端的所有请求仍然应该转发到nodejs服务器,除了我的blog.example.com调用不应该代理转发它们应该指向/ www /博客文件夹。这可能吗 ?

以下是httpd.conf中的Virtualhost代码: -

    <VirtualHost *:80>
        ProxyPreserveHost On
        ProxyPass / http://localhost:9000/
        ProxyPassReverse / http://localhost:9000/
        ServerName example.com
    </VirtualHost>

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:2)

这对我有用。可能对其他人有所帮助。

    <VirtualHost *:80>
         RewriteEngine on
         RewriteCond %{HTTP_HOST} ^blog\.example\.com
         RewriteRule ^(.*)$ http://www\.example\.com/blog/$1 [L]

         ProxyPreserveHost On
         ProxyPass /blog !
         ProxyPass / http://localhost:9000/
         ProxyPassReverse / http://localhost:9000/
         ServerName example.com
    </VirtualHost>