2017-01-26 100 views
1

該服務器上找到所以我就正是這個404錯誤:控制器功能並不笨

未找到

所請求的網址/ adminigniter1/UserController中/插入此服務器上找到。

的Apache/2.4.18(Ubuntu的)在本地主機端口80

當我想從控制器調用一個函數,從我讀到它與.htaccess文件做服務器(而我把在我的源文件夾adminigniter1),但我似乎看行:

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

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

從我的index.php我發送到控制器的功能是這樣的:

<form method = "POST" action = "<?php echo base_url('Usercontroller/insert') ?>"> 

這是我的控制器:

<?php 

class Usercontroller extends CI_Controller { 
function __construct() { 
    parent::__construct(); 
    $this->load->model('Usermodel'); 

} 
public function index() { 
    $data["content"]= "user/index"; 
    $data["getStatus"] = $this->Usermodel->getStatus(); 
    $this->load->view("main",$data); 
} 
public function insert() { 
    $datai= $this->input->post(); 

    if(isset($datai)){ 
     echo $datai['txtApartament']; 
     exit; 
    } 
} 

}

什麼可能是錯誤的?

+0

您的'.htaccess'文件是否位於_adminigniter1_目錄中,或與其處於同一級別? – Tom

+0

位於adminigniter1文件夾中。 – Bogdan

回答

0

好吧,我找到了原因,我會在這裏發佈,因爲有人可以有這個問題。所有這些問題都在Apache2的一面:

如果你使用Ubuntu去:

sudo gedit /etc/apache2/apache2.conf 

在那裏,你可以看到編輯領域是這樣的:

<Directory /var/www/html/> 
Options Indexes FollowSymLinks 
AllowOverride All 
Require all granted 

在我的情況的AllowOverride被設置爲無,所以你必須把它設置爲All,另一件事,檢查你的localhost/var/www/html /的根目錄是否正確!