我遇到这个问题已经有一段时间了,但所有类似帖子的答案都不起作用。
我的问题:
我有一个在 Linux 服务器上运行的域(使用 apache):例子.net;我在同一个 IP 下有第二个服务器在域上运行,端口为:例如.net:8083
我需要将 subdomain.example.net 指向 example.net:8083,我该怎么做?
目前,在我的 httpd.conf 文件中,有以下几行:
<VirtualHost *:80>
ServerName subdomain.example.net
ProxyPreserveHost on
ProxyPass / http://example.net:8083
</VirtualHost>
遗憾的是,这并不管用。
任何帮助都将不胜感激!
答案1
我不会将其放入您的 httpd.conf 中,而是创建一个单独的 vhost。
<VirtualHost *:80>
ProxyPreserveHost On
ProxyRequests Off
ServerName example.com
ServerAlias example.com
ProxyPass / http://subdomain.example:8083/
ProxyPassReverse / http://subdomain.example.net:8080/
</VirtualHost>
试试这个。确保您有一个 vhost 其他服务器正在监听 8083 上的请求。apachectl configtest
您可以使用它来测试您的配置是否正确。您还需要sudo a2enmod proxy && sudo a2enmod proxy_http && sudo service apache2 restart