2016-01-26 3 views
1

Следующий код находится в моем файле .httacces.Как удалить index.php из url в codeignitor?

#write your project folder name as rewritebase 
RewriteBase /Codeignitor3D/ 

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

Это даст ошибку 500 Internal Server

+1

см. Http://stackoverflow.com/questions/19183311/codeigniter-removing-index-php-from-url – Noman

ответ

0
  • Убедитесь, что установлен mod_rewrite и включен
  • Убедитесь, что файл сайта конфигурации веб-сервера Apache позволяет использовать .htaccess
  • Check апача ошибка журнала, как а также журнал ошибок PHP, поскольку вы получаете 500

Отзыв http://www.codeigniter.com/user_guide/general/urls.html

2

Попробуйте это правило: -

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule .* index.php/$0 [PT,L] 

В файле config.php,

//Find 
$config['index_page'] = "index.php" 
//and replace it with 
$config['index_page'] = "" 

Надеется, что это поможет :)

+0

Решена ли ваша проблема? –

1

шаги, чтобы удалить index.php из URL-адрес CodeIgniter: -

Изменения конфигурации: - Перейдите в раздел "application/config/config.p л.с.»

Найдите ниже код: -

$config['index_page'] = 'index.php'; 

Замените код ниже: -

$config['index_page'] = ''; 

.htaccess изменения: - Если вы не имеете любые Htaccess создавать новые и поместить его на корень.

Примечания: - если у вас есть CodeIgniter в изменении подкаталога RewriteBase/к RewriteBase/подкаталог/

RewriteEngine on 
RewriteBase/
RewriteCond $1 !^(index.php|resources|robots.txt) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php/$1 [L,QSA] 

Теперь откройте страницы сайта вы нашли чистый URL, без index.php. поэтому ваш весь URL-адрес выглядит как http://example.com/controller/method. Теперь любой HTTP-запрос для index.php будет рассматриваться как запрос для вашего файла index.php.

Если все еще проблема: - необходимо применить еще одну конфигурацию. Перейти к «приложение/Config/config.php» Найдите ниже код

$config['uri_protocol'] = 'AUTO'; 

Замените код ниже

$config['uri_protocol'] = 'REQUEST_URI'; 

Теперь вы полностью сделали, чтобы удалить index.php из URL-адреса CodeIgniter и получение чистый URL-адрес в кодеригнере.

+0

@ParasDalsaniya в конечном итоге, измените эту строку 'RewriteRule^(. *) $ Index.php/$ 1 [L, QSA]' на 'RewriteRule^(. *) $ Index.php?/$ 1 [L, QSA]'. – Tpojka

Смежные вопросы