我在本地计算机和使用apache的Web应用程序上安装了haproxy。我想要以下内容:我的主应用程序位于http://domain,副应用程序位于http://domain/sideapps/application1。我可以点击http://domain/sideapps/并看到apache默认页面,但是当我尝试转到http://domain/sideapps/application1时,我被重定向到http://domain/application1。
我的haproxy.cfg和apache配置如下:
haproxy.cfg:
frontend app_front
bind *:80
stats uri /haproxy?stats
maxconn 500000
bind *:443 ssl crt /etc/ssl/ssl.pem
redirect scheme https if !{ ssl_fc }
reqadd X-Forwarded-Proto:\ http
errorfile 503 /etc/haproxy/errors/503-mycustom.http
acl url_apps path_beg /sideapps
acl main hdr(host) -i domain
use_backend side_apps if main url_apps
use_backend main_app if main
backend side_apps
reqrep ^([^\ ]*\ /)sideapps[/]?(.*) \1\2
balance roundrobin
server servername 127.0.0.1:5000 check inter 5 fall 3 rise 2
backend main_app
balance roundrobin
server servername 127.0.0.1:9000 check inter 5 fall 3 rise 2
apache.conf:
LoadModule rewrite_module modules/mod_rewrite.so
<VirtualHost *:80>
ServerName domain/sideapps
DocumentRoot "/"
ProxyPass /application1/ http://appname:8000/application1/
ProxyPassReverse /application1/ http://appname:8000/application1/
</VirtualHost>
这是做path_beg的正确方法吗?我不确定如何让我的应用程序删除网址的“ / sideapps /”部分。任何帮助将不胜感激,谢谢