0

这是我的 .htacces 文件:

RewriteEngine on     
RewriteBase /    
RewriteCond %{HTTP_HOST} ^www.mysite.com [NC]    
RewriteRule ^(.*)$ http://mysite.com/ [R=301,L]    
RewriteRule .* index.php    

它重写了几乎所有对 index.php 的请求,但是当我在 URL 中放置反斜杠 (\) 时,就像 mysite.com/sth\ 一样,它会显示 apache 404 错误。如何解决?Firefox 以外的浏览器将 \ 替换为 / 但我希望它也能在 fx 中工作。我将 AllowEncodedSlashes 切换为 On 但即使在 apache 重新启动后它仍然无法正常工作。

4

1 回答 1

0

你可以试试下面的代码。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

并确保您在 httpd.conf 中启用了允许覆盖所有功能,并且在同一个 httpd.conf 文件中启用了 mod_rewrite 库。如果它有效,请将其标记为已回答并点赞。

于 2013-08-29T07:35:31.407 回答