使用htaccess通过php重新路由所有请求
我正在使用使用htaccess通过php重新路由所有请求,php,.htaccess,Php,.htaccess,我正在使用.htaccess文件将所有即将到来的请求发送到index.php中,如: RewriteCond %{SCRIPT_FILENAME} !-d RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule ^.*$ ./index.php 现在我不想在我的服务器中使用.htaccess文件,那么有什么方法可以处理或发送某个文件上的所有传入请求?或者说在index.php 您可以将相应的配置选项从.htaccess文件移到apache配置文件中。他
.htaccess
文件将所有即将到来的请求发送到index.php
中,如:
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^.*$ ./index.php
现在我不想在我的服务器中使用
.htaccess
文件,那么有什么方法可以处理或发送某个文件上的所有传入请求?或者说在index.php
您可以将相应的配置选项从.htaccess文件移到apache配置文件中。他们也在那里工作
除此之外:没有
您可以使用index.php/test
并通过$\u服务器['PATH\u INFO']获取后者(如果它在apache()中被激活),但是在这个变体中,您必须在所有URL前面加上“index.php/”
无法自动将每个请求重定向到index.php
如果您不想使用这两个选项中的任何一个,那么您至少必须在希望能够访问的每个位置创建一个php文件,并在该文件中重定向或包含另一个文件。不太好。如果不修改Web服务器的选项,如htaccess、虚拟主机文件等,就很难做到 但是,如果您拥有运行PHP内置Web服务器的权限,则可以使用内置Web服务器 输入命令:
$ php -S localhost:80 router.php
并使router.php文件如下所示:
<?php
// router.php
if (preg_match('/\.(?:png|jpg|jpeg|gif)$/', $_SERVER["REQUEST_URI"])) {
return false; // serve the requested resource as-is.
} else {
echo "<p>Welcome to PHP</p>";
}
?>
来源:否。在不使用
.htaccess
文件的情况下,如何指示服务器在点击PHP解释器之前执行操作。你打算修改httpd.conf吗?我不太了解如何编辑htpd.conf,但是一些MVC框架也会这样做?我的意思是他们只通过index.php处理所有请求,对吗?