【发布时间】:2014-10-25 22:31:39
【问题描述】:
我的 htaccess:
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ([^/.]+)/([^/.]+)(.*) /Application/?path=$1/$2$3 [L,QSA]
RewriteRule ^$ /Application/?path=ACFrontPage/getMainPage [L,QSA]
RewriteRule (.*) /Application/index.php?path=$1 [L,QSA]
此行导致无限重定向:
RewriteRule (.*) /Application/index.php?path=$1 [L,QSA]
但如果以前的规则不匹配,我需要将所有内容重定向到 index.php 文件。 我该怎么做?
从日志中它这样做:
split uri=/Application/?path=Application/ -> uri=/Application/, args=path=Application/&path=Application/&path=Application/&path=Application/&path=Application/&path=Application/&path=Application/&path=Application/&path=Application/&path=Application/
==========================
@anubhava
我尝试了您建议的答案,它适用于除基本域之外的所有内容,即: http://example.com/
【问题讨论】:
-
RewriteCond %{REQUEST_URI} !^/Application/index\.php以上RewriteRule (.*) /Application/index.php?path=$1 [L,QSA]或RewriteRule ((?!^/Application/index\.php).*) /Application/index.php?path=$1 [L,QSA]- 没有检查它 -
谢谢,第一个我试过了,它不适合我,第二个我稍后再试。
-
抱歉,第一个确实有效。谢谢)
标签: apache .htaccess mod-rewrite