selinux开关开启
setsebool -P httpd_can_network_connect=1
httpd配置
反向代理模块加载
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
反向代理规则配置
以redmine为例子
<IfModule mod_proxy.c>
ProxyRequests off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://127.0.0.1:3000/
ProxyPassReverse / http://127.0.0.1:3000/
</IfModule>
在浏览器输入httpd://"服务器地址"则会被转发到http://127.0.0.1:3000
这样虽然可以直接通过ip访问redmine,但是也屏蔽掉了自身的web页面,因为所有的请求全部转发到了3000端口
我尝试这样修改
ProxyPass /redmine/ http://127.0.0.1:3000/
apache的自有页面可以正常访问了但是redmin有些不对劲
结果是部分直接页面可以加载,其他间接页面加载不到的问题,比如css文件之类的都没有加载到
查看错误日志,貌似间接页面直接抛掉了/redmine/目录,目前这个问题还没结局,搞定再补充