Apache httpd.conf - 将请求路由到不同的端口

时间:2016-02-01 14:07:07

标签: apache url-rewriting url-redirection httpd.conf

我在端口httpd上运行了 CentOs 7.1 ,其中Apache 9000正在运行。

因此,如果我输入我的浏览器:http://192.168.56.101:9000/我看到 Apache测试123页

我还在端口8888上运行了 GitLab 服务器,但此端口已被防火墙关闭。

我希望Apache将流量重定向到http://192.168.56.101:9000/gitlab内部的GitLab服务器。

我在Apache配置文件/etc/httpd/conf/httpd.conf中完成了这个:

<VirtualHost *:9000>
  ProxyPass /gitlab http://192.168.56.101:8888/users/sign_in
  ProxyPassReverse /gitlab http://192.168.56.101:8888/users/sign_in
</VirtualHost>

当用户浏览到http://192.168.56.101:9000/gitlab时,会出现登录页面(尽管css似乎已经破了),但是当登录时出现:

Not Found

The requested URL /users/sign_in was not found on this server.

这是可以用Apache配置的吗?如果是这样的话?

我是否需要使用某种Url-Rewriting,如果是,以及如何开始?

1 个答案:

答案 0 :(得分:0)

gitlab中的所有链接都会假定您指向原始服务器。

因此,您需要查看mod_proxy_html以替换HTML中的这些链接: https://httpd.apache.org/docs/2.4/mod/mod_proxy_html.html