В моем новом проекте CI я получаю следующую ошибку каждый раз, когда пытаюсь получить доступ к любому URL-адресу, кроме базового url и базового url /index.php. Например, если я хотел бы получить доступ к «о» странице:Маршрутизация по умолчанию для Codeigniter не работает
Не найдено
Запрошенный URL/my_base_url/о не найден на этом сервере.
Это то, что мой routes.php файл выглядит следующим образом:
$route['default_controller'] = "base";
$route['about'] = "base/about";
$route['404_override'] = '';
Я тройной проверил мой базовый контроллер, и это, безусловно, имеет о методе (который загружает существующий «о» целях).
Вот мой файл .htaccess:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
И вот несколько вещей, которые я поставил в моем файле config.php:
$config['base_url'] = 'http://localhost/my_base_url/';
$config['index_page'] = '';
$config['uri_protocol'] = 'AUTO';
Что я делаю неправильно? Любая помощь очень ценится!
Я попытался это, но затем получил "Запретный У вас нет разрешения на доступ/my_base_url/на этом сервере." (Я проверил разрешения на этот каталог, хотя, и я должен быть в состоянии просмотреть его!) – anniebabannie
@anniebabannie Вы уверены, что 'index.php' является одним из файлов в списке« DirectoryIndex »? Вы уверены, что файл htaccess действительно читается (и у вас загружен mod_rewrite)? –
Я проверил файл httpd.conf и да, указав index.php. Я протестировал, чтобы проверить, читается ли файл htaccess, вставляя тарабарщину (в результате возникает внутренняя ошибка сервера - так что да, она читается), и да mod_rewrite загружается. – anniebabannie