我希望在请求任何路径/页面时加载 webapp/index.php。因此,我将以下内容放入我的 htaccess
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ /webapp/index.php?_path=$1 [L,QSA]
这适用于任何路径,虽然没有给出页面,但它似乎不起作用。当请求“/”时,如何应用相同的规则?
也许这有效:
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]
将.+(一个或多个字符)替换为.*(0 个或多个字符)。IE:
RewriteRule ^(.*)$ /webapp/index.php?_path=$1 [L,QSA]