【问题标题】:Getting 404 error, due to .htaccess?由于 .htaccess,出现 404 错误?
【发布时间】:2014-01-15 16:19:51
【问题描述】:

我正在使用 Slim PHP 在我的本地主机上开发一个站点,用于 RESTful 服务。已经完成的一件事是设置它,以便 localhost/admin/client 将返回有关数据库中客户端的所有信息。这一切都在 Slim 1.4 上运行良好

但是最近升级到 Slim 2.4,我的 Apache 服务器给我一个 404 错误,说找不到文件。

.htaccess:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ api/router.php?url=$1 [L,QSA]

api/router.php:

$URL = explode('/', $_GET['url']);
$file = $URL[0].'.'.$URL[1].'.php';
if (file_exists($file)) {
    require($file);
}

它正在寻找的文件显然是 admin.client.php。但是,这会返回 404 错误。但是,如果我将echo("foo"); 放在 admin.client.php 的顶部,它会显示在 404 页面上。我还检查了我的 error.log 文件,我尝试使用该页面时没有任何内容。

谢谢

【问题讨论】:

    标签: php apache .htaccess http-status-code-404


    【解决方案1】:
    #LoadModule rewrite_module modules/mod_rewrite.so
    

    删除 # 行后将如下所示:

    LoadModule rewrite_module modules/mod_rewrite.so
    

    然后重启服务

    【讨论】:

    • mod_rewrite 未注释,它仍然重定向到 api/router.php
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-10
    • 2014-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-05
    相关资源
    最近更新 更多