我觉得另一种技术不那么晦涩难懂,那就是auto_prepend_file
将对该文件夹的所有请求首先重定向到一个文件,然后加载库,然后加载您将让这些其他用户修改的文件。
以下是我使用您的重写代码解析此类事情的方式...如果 htaccess 文件与文件夹位于同一目录中,我认为重写规则将如下所示:
RewriteRule ^(.*)$ index.php/$1 [L]
在 index.php 文件中,我通常会为站点加载某种配置,然后进行委派。我在这里使用这个函数来获取当前的 url...我不完全确定它是否是矫枉过正,但它在多个平台上对我来说一直有效。
function get_current_url() {
$pageUrl = 'http';
if (@$_SERVER["HTTPS"] == "on") {$pageUrl .= "s";}
$pageUrl .= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$pageUrl .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$pageUrl .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $pageUrl;
}
然后,您基本上可以使用 php 的parse_url()
函数解析 get_current_url() 的结果并进行适当的委派。