2015-10-17 55 views
0

嗨我是codeigniter的新手。我已經在Ubuntu 14.04上安裝了codeigniter,並且能夠看到歡迎頁面。但是我創建的其他控制器無法正常工作。無法在codeigniter中工作的URL

我收到一條消息,找不到頁面。我環顧了很多,但找不到任何解決我的問題。

任何人都可以提供幫助嗎?

class Login extends CI_Controller { 

public function __construct() { 
    parent::__construct(); 
    $this->load->helper('url'); 
    $this->load->library('email'); 
    $this->load->helper('form'); 
    $this->load->library('form_validation'); 
    $this->load->library('session'); 
    $this->load->model('login_model'); 
} 

public function index($msg = NULL) { 
    $data['msg'] = $msg; 
    if ($this->session->userdata('validated') == false) { 
     $this->load->view('templates/header_login'); 
     $this->load->view('login_view', $data); 
     $this->load->view('templates/footer'); 
    } 
    else { 
     redirect('home', 'refresh'); 
    } 
} 

routes.php文件

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

默認笨頁作品完全沒問題。但是,如果我改變與我的默認控制器然後我得到一個消息,找不到網頁

+1

顯示控制器 –

+0

http://stackoverflow.com/questions/19183311/codeigniter-removing-index-php-from -url –

+0

@RejoanulAlam它有很多答案,沒有一個被標記爲正確的答案。我應該考慮哪一個? –

回答

1

只要您安裝笨,

您可以隨時訪問任何控制器,具有http://sitename/index.php/controller/method/parameter。使用.htaccess文件從url中刪除index.php。

您可以http://sitename.com/index.php/login

樣品的.htaccess代碼訪問您的登錄頁面: RewriteEngine on RewriteCond $1 !^(index\.php|images|robots\.txt) RewriteRule ^(.*)$ /index.php/$1 [L]

+0

我是.htaccess的新手。你能幫我解決這個問題嗎? –

+0

閱讀本教程http://w3code.in/2015/09/how-to-remove-index-php-file-from-codeigniter-url/ – Ricky

0

要訪問您的自定義控制所有你需要做的就是在你的URL中使用index.php。比如,如果你的控制器名稱爲User使用這個網址http://localhost/your_project/index.php/user

,如果你想要去的任何其他方法User控制器一樣create然後用

http://localhost/your_project/index.php/user/create

但是,如果你不喜歡看到你的網址index.php,那麼你可以將一個文件放在根目錄名稱.htaccess,把以下這個文件中

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

編號:More Details

現在你的URL看起來像http://localhost/your_project/user/create

0

笨是這樣的

www.yourdomain.com/controller/function

,如果你在你的控制器可以添加索引功能直接訪問

www.yourdomain.com/controller/

檢查您添加索引功能

請在您的項目根添加的.htaccess

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

<IfModule !mod_rewrite.c> 
    ErrorDocument 404 /index.php 
</IfModule>