【问题标题】:Codeigniter: All pages shows 404 page not found (codeigniter's 404, not apache's)Codeigniter:所有页面都显示未找到 404 页面(codeigniter 的 404,而不是 apache 的)
【发布时间】:2015-08-14 09:40:04
【问题描述】:

最近,在我的电脑更换硬盘之前,我正在使用虚拟主机。 更换硬盘后,我现在使用 apache 的 htdocs 文件夹。 当我再次尝试访问我的 codeigniter 项目时,所有页面都显示“404 Page Not Found”。 它不是来自我的网络服务器,因为我可以看出错误消息来自 CodeIgniter 的(因为它是一个样式化的 404 错误页面)。

我的项目有两个控制器:(Admin.phpVendor.php)。这两个工作得很好。

我尝试过的事情:

  • 检查了我的 config/config.php

    $config['base_url'] = '';
    $config['index_page'] = 'index.php';
    

    然后我尝试将其更改为:

    $config['base_url'] = 'http://localhost/Work%20Projects/Admin_Panel/';
    
  • 尝试使用和不使用 index.php 访问我的控制器,以防我的 mod_rewrite 无法正常工作。还是不行。

    http://localhost/Work%20Projects/Admin_Panel/index.php/admin
    http://localhost/Work%20Projects/Admin_Panel/admin
    

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    改变这个

    Config.php

    $config['base_url'] = '';
    $config['index_page'] = 'index.php';
    

    .htacess

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php/$1 [L] 
    </IfModule>
    

    注意:在我的电脑上也有同样的问题。但是当我上传到服务器时,它工作得很好。

    直到你使用

    $config['base_url'] = 'http://localhost/Work%20Projects/Admin_Panel/index.php/';
    

    上传时只需添加一个域名即可完美运行。

    $config['base_url'] = 'https://stackoverflow.com/';
    

    【讨论】:

    • 好的,谢谢。我稍后会尝试。我上传它时它可以工作,但不能在本地工作。
    • 实际上,这只是我在 Web 服务器中的路径的问题,而不是 CodeIgniter 的问题。很抱歉打扰您。
    猜你喜欢
    • 2015-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-14
    • 2019-12-02
    • 1970-01-01
    • 2015-05-19
    相关资源
    最近更新 更多