如何重写一个请求,使其全部小写?我环顾四周,一些答案是使用重写模块,但那些不是使用反向代理的具体情况。
我想要的是这样的请求:
http://mywebsite/SomeApPlIcAtIon
转换为:
http://mywebsite/someapplication/
任何建议?
更新
我已经设置了我认为应该是正确的,我的httpd.conf看起来像这样:
servername localhost
RewriteEngine on
RewriteLog "/var/log/apache2/rewrite.log"
RewriteLogLevel 9
RewriteMap lc int:tolower
RewriteCond %{REQUEST_URI} [A-Z]
RewriteRule (.*) ${lc:$1} [R=301,L]
我的反向代理设置在conf.d文件中,名为sabnzbd.conf,如下所示:
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyPass /sabnzbd/ http://192.168.21.21:9999/sabnzbd/
ProxyPassReverse /sabnzbd http://192.168.21.21:9999/sabnzbd/
在我的已启用网站中,我的000-defailt已将AllowOverride
设置为All
当我去192.168.21.21/sabnzbd/时它工作得很好。
当我转到192.168.21.21/SABNZBD/时,我得到了404.重写规则不起作用。
当我转到我的重写日志文件来检查它时,没有数据。
出了什么问题?
答案 0 :(得分:0)
假设您在Ubuntu上使用Apache服务器 - 您可以使用mod_rewrite模块。
您可以关注此博客(网址:http://www.chrisabernethy.com/force-lower-case-urls-with-mod_rewrite/),它介绍了配置模块的步骤。