#php #.htaccess #codeigniter #xampp
Вопрос:
Я прочитал несколько тем с людьми, у которых была похожая проблема, и ни одно из решений, похоже, не работает для меня. Мой сайт размещен по адресу http://localhost/mysite/.
У меня есть сайт codeigniter, и я использую XAMPP.
В любое время, когда я захочу получить доступ к странице, у меня есть index.php в URL-адресе (http://localhost/mysite/index.php/newpage или http://localhost/mysite/index.php/anothernewpage)
Вот мой файл .htaccess
RewriteEngine on RewriteCond $1 !^(index.php|resources|robots.txt) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?/$1 [L,QSA]
Вот мой конфигурационный файл
$config['base_url'] = "http://localhost"; $config['index_page'] = ''; $config['uri_protocol'] = 'REQUEST_URI';
Вот мои маршруты
$route['default_controller'] = 'welcome'; $route['404_override'] = ''; $route['translate_uri_dashes'] = FALSE;
Я также раскомментировал следующую строку в своем файле httpd.conf (XAMPP)
LoadModule rewrite_module modules/mod_rewrite.so
Если я попытаюсь получить доступ к области сайта без включения index.php (http://localhost/mysite/newpage)Я получаю сообщение об ошибке 404.Запрошенный URL-адрес не был найден на этом сервере. Я должен указать полный URL-адрес http://localhost/mysite/index.php/newpage. Кто-нибудь может помочь мне понять, что не так с этой настройкой?
Комментарии:
1. пожалуйста, укажите структуру ваших папок
Ответ №1:
Ваш базовый URL-адрес должен быть $config['base_url'] = "http://localhost/mysite";
Ответ №2:
В корне в файле .htaccess (если он не существует, создайте его):
RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?/$1 [L]
в application/config/config.php
$config['base_url'] = ((isset($_SERVER['HTTPS']) amp;amp; (strtolower($_SERVER['HTTPS']) || $_SERVER['HTTPS']==1)) ? "https" : "http")."://".$_SERVER['HTTP_HOST']."/";
В локальном хосте (только локальный хост) добавьте имя сайта после «/» в $config[‘base_url’];