我在htaccess中有一些配置:
RewriteEngine On
RewriteRule ^(.*)$ /index.php [L,NC,QSA]
所有网址都重定向到/index.php
但如果文件夹存在,则转到文件夹,而不是/index.php
为什么?
我尝试了这个解决方案:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule . index.php [QSA,L]
但这就像之前的例子一样转到了目录=(
答案 0 :(得分:0)
试试这个
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php
或者
RewriteEngine On
RewriteCond %{REQUEST_URI} !-f
RewriteRule (.*) index.php [QSA]
答案 1 :(得分:0)
使用类似的东西:
#turn rewrite engine on
RewriteEngine On
#specify your base
RewriteBase /
#make sure, your index.php won't be rewritten
RewriteRule ^index.php - [L]
#rewrite everything else
RewriteRule ^(.*)$ index.php?para=$1 [QSA,L]
答案 2 :(得分:0)
但如果文件夹存在,则转到文件夹,而不是/index.php
尝试停用MultiViews
- 这通常会干扰此类情况。
Options -MultiViews
http://httpd.apache.org/docs/2.2/mod/core.html#options
http://httpd.apache.org/docs/2.2/mod/mod_negotiation.html#multiviews