Откройте httpd.conf, обычно расположенный в каталоге установки Apache в windows
/apache/conf/httpd.conf
и
/etc/httpd/httpd.conf
в системах на основе Unix. httpd.conf - это файл конфигурации Apache, в котором хранится различная информация о сервере.
Поиск модуля mod_rewrite.so
или (mod_rewrite.c
в редких случаях). Модуль mod_rewrite разработан для перезаписи запрошенных URL-адресов на лету. Большую часть времени вы найдете в комментариях.
#LoadModule rewrite_module modules/mod_rewrite.*
Здесь #
символ означает, что он закомментирован или отключен.
LoadModule rewrite_module modules/mod_rewrite.*
Удалите #
и перезапустите Apache Http Server, используя команду apache -k restart
в Windows или service httpd restart
в Unix-системах. Вы также используете интерфейс XAMPP / Wamp для перезапуска Apache в системах Windows.
Далее создайте .htaccess
файл в корневом каталоге, в котором находится ваш проект CodeIgniter, и вставьте следующий код
# index file can be index.php, home.php, default.php etc.
DirectoryIndex index.php
# Rewrite engine
RewriteEngine On
# condition with escaping special chars
RewriteCond $1 !^(index\.php|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php/$1 [L,QSA]
Далее Найти файл конфигурации CodeIgniter, обычно расположенный в его каталоге конфигурации.
./application/config/config.php
Откройте файл и оставьте значение $config['index_page']
пустым. который выглядит так
/*
|--------------------------------------------------------------------------
| Index File
|--------------------------------------------------------------------------
|
| Typically this will be your index.php file, unless you've renamed it to
| something else. If you are using mod_rewrite to remove the page set this
| variable so that it is blank.
|
*/
$config['index_page'] = '';
Теперь история окончена. Все должно работать нормально. Вы можете найти больше информации о httpd.config по Apache Module mod_rewrite . Надеюсь, это поможет вам. Спасибо !!