/ / Codeigniter URL rewriting .htaccess не работи с CentOS - linux, apache, .htaccess, codeigniter, mod-rewrite

Редактирането на преписващия URL код на Codeigniter .htaccess не работи на CentOS - linux, apache, .htaccess, codeigniter, mod-rewrite

Създадох .htaccess файл в корените на документа на /var/www/html/ да пренапишете URL на Codeigniter, за да премахнете "index.php" от URL на всички страници.

например Променете URL адреса от

http://myhost/index.php/controller/function

да се

http://myhost/controller/function`

Ето кода на моя `/var/www/html/.htaccess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

Имам много предложения от googling, за да се даде възможност на mod-rewrite модул, но мога да видя в моя httpd.conf вече е активиран.

LoadModule rewrite_module modules/mod_rewrite.so

Това перфектно работи върху локалната ми система, работеща на Debian 7 (Apache / 2.4.4).

Всяка помощ ще бъде оценена. :)

Отговори:

11 за отговор № 1

Трябва също да посочите местоположенията, които могат да го използват. Например в /etc/httpd/conf/httpd.conf трябва да видите нещо като:

<Directory "/var/www/html">

...lots of text...

</Directory>

Уверете се, че има:

<Directory "/var/www/html">

AllowOverride All

</Directory>

0 за отговор № 2

Възможно е вашият centos сървър да не се настрои да работи с PATH INFO. Опитайте да замените index.php/$1 в целта на вашето правило index.php?/$1.

След това трябва да промените конфигурацията на CI, за да активирате низовете на заявките: http://ellislab.com/codeigniter/user-guide/general/urls.html

В теб application/config.php набор от файлове $config["enable_query_strings"] да се TRUE.