我的前端服务器由Apache 2.4处理。
我希望在访问http://198.51.100.13/site1/时,它会自动将流量重定向到我服务器的端口1001,如下所示:
<VirtualHost *:80>
ServerName 198.51.100.13
<Directory "/">
Require all granted
</Directory>
RewriteEngine On
RewriteRule ^/site1(.*)$ http://localhost:1001$1 [P,L]
RewriteRule ^/site2(.*)$ http://localhost:1002$1 [P,L]
RewriteRule ^/site3(.*)$ http://localhost:1003$1 [P,L]
</VirtualHost>
问题:打开http://198.51.100.13/site1/时出现此错误:
403:禁止
您无权访问此服务器上的/ areallybigpage。
另一方面,如果我http://198.51.100.13:1001/,它可以工作(有一个Python serveron端口1001,但这对于这个问题并不重要。)
如何解决这个问题?
答案 0 :(得分:0)
解决方案是:
<VirtualHost *:80>
ServerName 198.51.100.13
RewriteEngine On
RewriteRule ^/site1(.*)$ http://localhost:1001$1 [P,L]
RewriteRule ^/site2(.*)$ http://localhost:1002$1 [P,L]
RewriteRule ^/site3(.*)$ http://localhost:1003$1 [P,L]
</VirtualHost>
但不要忘记这样做:
a2enmod proxy
a2enmod proxy_http # I forgot this one!
a2enmod proxy_wstunnel # mandatory if using websockets
service apache2 restart