Я использую Codeigniter 3. При работе на локальном сервере Wamp все хорошо. Но при работе на моем VPS (Linux Debian Apache 2.2.22) я получаю сообщение «URL not found».Codeigniter не может найти контроллер
здесь контроллер:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Contact extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->helper('url');
$this->load->library('session');
$this->load->helper('form');
}
public function index()
{
$this->load->view('contact_view');
}
}
Мой URL для этого контроллера www.example.com/Contact
сообщение об ошибке:
Запрошенный URL /index.php/Контакт не найден на этом сервере.
Я удалил index.php из $config['index_page'] = ''
В моем файле .htaccess, я использую переписывают в eleminite необходимость index.php в URL-адресов, с помощью этого:
RewriteEngine on RewriteCond $1 !^(index\.php|resources|robots\.txt) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L,QSA]
директивы на моем виртуальном хосте являются:
<Directory "/var/www/example"> Options Indexes FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory>
mod_rewrite является défini tely включен на виртуальном хосте.
Все работает нормально на моей локальной машине, работает Wampserver, но почему это не работает на моем VPS?
Если вы помещаете случайные символы в верхнюю часть вашего файла htaccess, вы получаете ошибку 500? – rjdown
RewriteRule^(. *) $ Index.php?/$ 1 [L] - попробуйте с этим ... (вопросительный знак после index.php) - это помогло мне на некоторых серверах/хостах ... Даже здесь некоторые плакаты упомянули об этом ... http://forum.codeigniter.com/thread-1236.html – sinisake
Да - на обоих серверах –