将域后的所有内容路由到index.php?

时间:2013-09-08 10:16:22

标签: php apache .htaccess mod-rewrite

我正在使用此.htaccess文件,但它不起作用:

Options +FollowSymlinks
RewriteEngine on

RewriteRule ^(.*)$ /index.php?$1 [R,L] 

我在Apache错误日志中看到的是[错误:内部重定向超过10次]。 我在RewriteRule中添加了标志'L',但在第一次匹配重写规则后它没有停止。

1 个答案:

答案 0 :(得分:2)

如果您运行的是v2.2.16 +,请使用FallbackResource,请参阅:https://httpd.apache.org/docs/2.2/mod/mod_dir.html#fallbackresource

FallbackResource /index.php

另一种方法是使用mod_rewrite,代码如下:

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