2014-11-01 3 views
0

Я пытаюсь удалить часть index.php из URL-адреса. Вот мой файл .htaccessПолучение «Внутренней ошибки сервера» при удалении index.php из URL

RewriteEngine On 
RewriteBase /faraztest 

RewriteCond %{REQUEST_URI} ^system.* 
RewriteRule ^(.*)$ /index.php?/$1 [L] 

RewriteCond %{REQUEST_URI} ^application.* 
RewriteRule ^(.*)$ /index.php?/$1 [L] 

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

Я также изменил файл config.php, но все же он говорит: «Внутренняя ошибка сервера», когда я положил URL удаления после удаления «/index.php/». Пожалуйста помоги.

+0

Он остается, когда вы просто набираете url без '/ index.php' в браузере? –

+0

нет, когда я помещаю указанный код в файл .htaccess, я даже не отвечаю на localhost/project/и дает эту ошибку –

+0

try '[R = 301, L]' enstead of [L] 'в конце –

ответ

1

Ну, я получил это один сделал!

Мой config.php

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

.htaccess находится в /faraztest/.htacces

Мой файл .htaccess является

<IfModule mod_rewrite.c> 
RewriteEngine on 
RewriteBase /faraztest 
RewriteCond $1 !^(index\.php|public|\.txt) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?$1 
</IfModule> 

<IfModule !mod_rewrite.c> 
# If we don't have mod_rewrite installed, all 404's 
# can be sent to index.php, and everything works as normal. 
# Submitted by: ElliotHaughin 

ErrorDocument 404 /faraztest/index.php 
</IfModule> 

и Б. NG! это сработало!

2 вещи я делаю неправильно, что я не был в том числе

<IfModule mod_rewrite.c> 
</IfModule> 

, а также в ErrorDocument 404 /faraztest/index.php я не давал правильного назначения файла.

+0

Ты, ЧЕЛОВЕК !!!! Благодаря! –

0

Настройки ниже всегда работали для меня. Если вы не работаете, перейдите на вкладку Network в своем браузере, чтобы узнать, что происходит.

config.php

$config['base_url'] = 'https://www.example.com/'; 
$config['index_page'] = ''; 

.htaccess

RewriteEngine On 

RewriteCond %{HTTPS} off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L] 

RewriteCond $1 !^(index\.php|web|robots\.txt) 
RewriteRule ^(.*)$ /index.php/$1 [L] 
+0

нет работающий либо .. –

0

Такая же проблема произошла со мной, похоже, что у вас не включен ваш модуль mod_rewrite, поэтому в настройках Apache включите модуль mod_rewrite, перезагрузите сервер и все.