使用 .htaccess 将所有请求重定向到 index.php
Redirect all requests to index.php using .htaccess
我正在编写自己的 PHP MVC 框架。我的 Web 服务器安装到 /public 并且我创建了一个名为 myframework 的目录。在这个目录下,我有一些子目录,我想将所有请求重定向到 myframework/public/index。php,我也想请求 url。我在 myframework 目录下创建了 .htaccess 文件,如下所示:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /myframework/public/index.php?q= [L,QSA]
它适用于所有请求,但 localhost/myframework/。当这个请求到来时它什么都不做。我该如何解决?
这一行
RewriteCond %{REQUEST_FILENAME} !-d
表示当请求指向真实目录时不要重写,这正是 localhost/myframework/
所请求的。把它拿出来,你的重写应该开始了。
我正在编写自己的 PHP MVC 框架。我的 Web 服务器安装到 /public 并且我创建了一个名为 myframework 的目录。在这个目录下,我有一些子目录,我想将所有请求重定向到 myframework/public/index。php,我也想请求 url。我在 myframework 目录下创建了 .htaccess 文件,如下所示:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /myframework/public/index.php?q= [L,QSA]
它适用于所有请求,但 localhost/myframework/。当这个请求到来时它什么都不做。我该如何解决?
这一行
RewriteCond %{REQUEST_FILENAME} !-d
表示当请求指向真实目录时不要重写,这正是 localhost/myframework/
所请求的。把它拿出来,你的重写应该开始了。