正如标题所说,我已经搜索了很多,尝试了一些修复,但它仍然不能在在线服务器上工作。在线我不断收到404页面找不到。当它在当地运行时,它就像一个魅力。
目前这是我的配置。
public_html/application/config/config.php:
$config['base_url'] = '';
$config['index_page'] = '';
$config['uri_protocol'] = 'AUTO';
我已尝试将base_url更改为站点域:http://junkfoodmountain.com/
尝试将index_page更改为index.php而不更改为任何内容
尝试将uri_procol更改为其他所有可能的协议。
public_html/.htaccess
Options -Indexes
RewriteEngine on
RewriteBase /
RewriteCond $1 !^(index'.php|assets|phpmyadmin|robots'.txt)
RewriteRule ^(.*)$ /index.php?/$1 [QSA,L]
尝试不使用.htaccess也不起作用
服务器是带有virtualmin的Ubuntu server 14.04 LTS。此上的所有配置都处于默认状态。当然,当你转到网站链接时,它会显示public_html 中的所有内容
更新1:
重新安装后。默认情况下一切正常。然后添加文件1乘1,我发现这与routes.php有关
$route['default_controller'] = 'welcome';
至
$route['default_controller'] = 'main/index';
这是main.php
<?php
class main extends CI_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('home_model');
}
public function index($page = 'home')
{
$menu['menu'] = $this->home_model->get_menu();
$data['servers_table'] = $this->servers_table($this->home_model->get_servers());
$this->load->view('templates/header', $menu);
$this->load->view('pages/'.$page, $data);
$this->load->view('templates/footer');
}
}
我发现您应该用大写字母作为第一个字母来调用控制器。更改
main.php>main.php
和
class main扩展CI_Controller>class main扩展CI_Coontroller
为我修复了
您可以尝试更改.htaccess文件上的值。有一次,我遇到了同样的问题,然后我可以用.htaccess解决它。我不记得我对它做了什么。我不能说的变化
我也遇到了同样的问题。我刚刚将控制器名称重命名为从Home
到home
的所有小写字符。