httpd RewriteRule不会添加尾部斜杠
问题描述:
我最近在centOS安装中首次使用了标准apache的httpd配置。目前,我无法指定一个RewriteRule,它为我的URL添加了一个尾部斜线,以便此目录中的htmls可以到达具有相对路径的css和js文件(不带尾部斜线,路径的最后部分被忽略:domain.com/pizza/cs
变为。domain.com/cs
这是坏的)httpd RewriteRule不会添加尾部斜杠
目前在httpd.conf的显著部分看起来是这样的:
RewriteEngine On
RewriteRule ^/pizza$ /pizza/
ProxyRequests Off
ProxyPreserveHost On
ProxyPass /pizza balancer://pizzaBalancer nofailover=On
ProxyPassReverse /pizza balancer://pizzaBalancer
<Proxy balancer://pizzaBalancer>
BalancerMember http://localhost:1234 keepalive=On
</Proxy>
当我输入我的网址一样domain.com/pizza
代理作品和重定向我到我的index.html那里,但index.html无法加载相对路径的js和css,如上所述。
在这一点上,我不知道如何继续或解决这个问题。
答
您应该在您的RewriteRule上附加一个[R],并在ProxyPass和ProxyPassReverse的两个参数中附加一个斜线。这样HTTPD将添加尾部斜杠,然后只有在随后的请求将访问tomcat。
根据你的提示编辑了httpd.conf,但它遗憾地没有改变任何东西。我开始认为我错过了更大的东西。 – FelixZett