簡體   English   中英

Codeigniter:404呼叫控制器

[英]Codeigniter: 404 on calling controller

訪問Url- http:// localhost:82 / admin / login然后 - 我收到404“找不到頁面錯誤”即 -

找不到對象!

在此服務器上找不到請求的URL。 如果您手動輸入了URL,請檢查拼寫,然后重試。

如果您認為這是服務器錯誤,請與網站管理員聯系。

錯誤404

localhost Apache / 2.4.9(Win32)OpenSSL / 0.9.8y PHP / 5.4.27

我的config.php

 $config['base_url'] = 'http://localhost:82/admin'; /* |-------------------------------------------------------------------------- | Index File |-------------------------------------------------------------------------- | | Typically this will be your index.php file, unless you've renamed it to | something else. If you are using mod_rewrite to remove the page set this | variable so that it is blank. | */ $config['index_page'] = ''; /* |-------------------------------------------------------------------------- | URI PROTOCOL |-------------------------------------------------------------------------- | | This item determines which server global should be used to retrieve the | URI string. The default setting of 'REQUEST_URI' works for most servers. | If your links do not seem to work, try one of the other delicious flavors: | | 'REQUEST_URI' Uses $_SERVER['REQUEST_URI'] | 'QUERY_STRING' Uses $_SERVER['QUERY_STRING'] | 'PATH_INFO' Uses $_SERVER['PATH_INFO'] | | WARNING: If you set this to 'PATH_INFO', URIs will always be URL-decoded! */ $config['uri_protocol'] = 'REQUEST_URI'; 

我的routes.php

 $route['default_controller'] = 'admin/index'; $route['404_override'] = ''; //$route['translate_uri_dashes'] = FALSE; /*admin*/ //$route['admin'] = 'user/index'; //$route['admin/signup'] = 'user/signup'; //$route['admin/create_member'] = 'user/create_member'; $route['admin'] = 'admin'; //$route['admin/logout'] = 'admin/logout'; $route['package'] = 'package'; 

我的控制器Admin.php

 <?php defined('BASEPATH') OR exit('No direct script access allowed'); class Admin extends CI_Controller { /** * Index Page for this controller. * * Maps to the following URL * http://example.com/index.php/admin * - or - * http://example.com/index.php/admin/index * - or - * Since this controller is set as the default controller in * config/routes.php, it's displayed at http://example.com/ * * So any other public methods not prefixed with an underscore will * map to /index.php/welcome/<method_name> * @see https://codeigniter.com/user_guide/general/urls.html */ function __construct() { parent::__construct(); $this->load->helper('url'); $this->load->helper('form'); $this->load->model('LoginModel'); $this->load->library('session'); } public function index() { if($this->session->userdata('is_logged_in')){ redirect('package/packages'); }else{ $this->load->view('admin/admin'); } } function __encrip_password($password) { return md5($password); } /** * check the username and the password with the database * @return void */ public function login() { echo "hi"; exit; $user_name = $this->input->post('username'); $password = $this->__encrip_password($this->input->post('password')); $is_valid = $this->LoginModel->validate($user_name, $password); if($is_valid) { $data = array( 'user_name' => $user_name, 'is_logged_in' => true ); $this->session->set_userdata($data); redirect('package/package'); } else // incorrect username or password { $data['message_error'] = TRUE; $this->load->view('admin/admin', $data); } } /** * The method just loads the signup view * @return void */ } 

可能你有.htaccess,因為你的控制器似乎很好,但你仍然得到這個答案。 請嘗試在根目錄中添加.htaccess。

routes.php文件

$route['default_controller'] = 'admin/index';

猜它應該是?

$route['default_controller'] = 'admin';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM