【问题标题】:Redirect all requests to index.php using .htaccess使用 .htaccess 将所有请求重定向到 index.php
【发布时间】:2015-04-10 13:39:37
【问题描述】:

我正在编写自己的 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=$1 [L,QSA]

它适用于除 localhost/myframework/ 之外的所有请求。当这个请求到来时它什么也不做。我该如何解决?

【问题讨论】:

  • 你把htaccess文件放在哪里了?它在公共文件夹中吗?如果是这样,那么只需将其移至 /myframework/
  • 不,在myframework下。

标签: php linux apache .htaccess


【解决方案1】:

这一行

RewriteCond %{REQUEST_FILENAME} !-d

表示当请求指向真实目录时不重写,这是localhost/myframework/ 所请求的。把它拿出来,你的重写应该开始了。

【讨论】:

    猜你喜欢
    • 2016-11-30
    • 1970-01-01
    • 2013-08-26
    • 1970-01-01
    • 1970-01-01
    • 2012-12-07
    • 1970-01-01
    • 1970-01-01
    • 2012-11-16
    相关资源
    最近更新 更多