2

我希望在请求任何路径/页面时加载 webapp/index.php。因此,我将以下内容放入我的 htaccess

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ /webapp/index.php?_path=$1 [L,QSA]

这适用于任何路径,虽然没有给出页面,但它似乎不起作用。当请求“/”时,如何应用相同的规则?

4

2 回答 2

1

也许这有效:

RewriteRule ^($|.*) /webapp/index.php?_path=$1 [L,QSA] 

或者,如果 .htaccess 文件不在根目录或未设置 DirectoryIndex,您可以尝试此操作:

DirectoryIndex index.php

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI}  ^($|.*)          [NC]
RewriteRule .* /webapp/index.php?_path=%1 [L,QSA]
于 2013-04-22T11:32:37.693 回答
0

.+(一个或多个字符)替换为.*(0 个或多个字符)。IE:

RewriteRule ^(.*)$ /webapp/index.php?_path=$1 [L,QSA]
于 2013-04-22T10:48:06.510 回答