我有一个网络服务,我想通过URL foo.com/bar
公开 . 但是我的Apache反向代理不能按预期工作 . 我创建了文件 001-default.conf
,其中包含以下代码:
<VirtualHost *:80>
ProxyPreserveHost On
ProxyRequests Off
ProxyPass /bar http://foo.com:8080/bar
ProxyPassReverse /bar foo.com:8080/bar
DocumentRoot /var/www/foo/
ServerName info.foo.com
<Directory /var/www/foo>
Options Indexes FollowSymLinks MultiViews Includes
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
现在我收到 404
错误代码 .
我想在foo.com/bar上实现所有点击以静默重定向到 foo.com:8080/bar
,这意味着用户应该只能看到URL foo.com/bar
. 反向代理重定向还应包括 foo.com/bar?=foobar
等请求 .
我确实启用了proxy_http和proxy:
% sudo a2enmod proxy_http
Considering dependency proxy for proxy_http:
Module proxy already enabled
Module proxy_http already enabled
我希望有人能够帮助我解决这个问题 .
类似的问题没有解决我的问题:apache reverse proxy changes url Transparent redirect to port 8080
1 回答
尝试编辑配置:
您也可以尝试使用mod_alias来避免现在可能面临的te / bar / bar问题 . 我不太了解它,请参阅文档:http://httpd.apache.org/docs/2.2/mod/mod_alias.html
尝试将此添加到您的conf中
使用此功能,您可能不想删除代理 .