简单的重写规则不工作在PHP/Apache的htaccess
问题描述:
我不知道为什么,但这个简单的规则将无法正常工作。简单的重写规则不工作在PHP/Apache的htaccess
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteBase/
RewriteRule ^rubbellos\.png/$ rubbellos/rubbelbild_png.php [NC,L]
RewriteRule ^rubbellos\.css/$ rubbellos/rubbellos_css.php [NC,L]
</IfModule>
如果我将xyz/rubbellos/rubbelbild_png.php复制到浏览器中,它是可以的。
我的做法是将rubbellos.png的请求带到.php文件中。但是我找不到文件。
Thx任何提示提前。
答
你有2个错误:
- 使用
RewriteBase
因为你谈论你的问题的子目录/xyz/
。 - 禁用
MultiViews
选项可避免rubbellos
(虚拟文件和现有目录)发生意外行为。
您可以通过这一个在你的htaccess的(这必须是在/xyz/
文件夹)
注意替换当前的代码:不要忘记你的真实子目录的名称,以取代xyz
thx。我将它改为上面的代码。 RewriteBase在我的情况下是根。 – hamburger 2014-09-06 10:59:33