我正在建立一个CodeIgniter项目,到目前为止一切进展顺利。除了一个之外,我的所有路线和控制器都能正常工作。虽然我是CodeIgniter的新手,但我已经使用PHP进行了近五年的编程,所以我有一些经验。如果有人可以看看下面的代码示例,并让我知道我做错了什么,那会很好。Codeigniter 3路由不工作
很明显,该应用程序确实识别该路由,但它一直抱怨无法找到该URI。
控制器:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Profile extends CI_Controller {
function __construct() {
parent::__construct();
$this->load->helper('url');
}
public function Profile($page = 'profile-page')
{
if (! file_exists(APPPATH.'/views/'.$page.'.php'))
{
// Load error page
show_404();
}
// Capitalize the first letter
$data['title'] = ucfirst($page);
$data['pageType'] = "profile-page";
// Load pages
$this->load->view('templates/header', $data);
$this->load->view('templates/topbar', $data);
$this->load->view('profile');
$this->load->view('templates/footer', $data);
//
}
}
接下来是我的路线:
$route['default_controller'] = 'home/home';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
// All custom routes go below this line.
$route['contact'] = 'pages/contact';
$route['signup'] = 'auth/signup';
$route['login'] = 'auth/login';
$route['profile'] = 'profile/profile';
我已经验证了所有的视图文件是在正确的文件夹,并没有错别字。然而配置文件路线仍然失败。所有其他路径正常工作,除了配置文件路由。
我在Windows 10上用XAMMP,Mac OS X Sierra与MAMP和CentOS 7与Apache/PHP/MySQL一起尝试了这一点。
谢谢。
虽然不是我的问题的答案,但您的问题确实指向了正确的方向。我得到它的工作原来是一个丢失的文件。 –