2013-03-06 3 views
0

Это мой файл .htaccess:Удалить index.php из URL не работает

 RewriteEngine On 

    RewriteBase /mydomainname.com/ 
    RewriteCond $1 !^(index\.php|images|assets|robots\.txt) 
    RewriteRule ^(.*)$ /index.php/$1 [L] 

Этот код работает на одном хостинге, а не на другой. Я попробовал, запустив этот код на обоих хостинг

1) на одном хостинг у меня есть мой код работает без добавления index.php в URL т.е.

www.mydomainname.com/contrlerName/functionname 

2) На другом домене I нужно добавить index.php в URL как:

www.mydomainname.com/index.php/contrlerName/functionname 

, что может быть проблема?

Заранее благодарен!

+0

Код нахож у обоих хостов? –

+0

@FabioAntunes да! – sandip

+0

как кто-то ответил раньше, вы должны удалить RewriteBase /mydomainname.com/ или переименовать «mydomainname.com» на свое новое доменное имя. И вы должны быть уверены, что mod_rewrite включен, если не свяжитесь с моим хостинговым сервисом –

ответ

1

Удалите линию RewriteBase, возможно, это было необходимо для вашего старого, но не нового. Это нестандартно, это не должно было случиться. Вероятно, у них была какая-то безумная установка виртуального хостинга.

Возможно, это ваш новый хостинг, он не позволяет файлы .htaccess, поэтому его просто игнорируют.

+0

Я пробовал это, но потом он дает 500 внутренних ошибок сервера! – sandip

+0

Вы проверили error_log, чтобы узнать, что такое фактическая ошибка? – barryhunter

+0

Это дает 500 ошибок, если я удаляю строку RewriteBase! – sandip

0

Просто проверить, что mod_rewrite работа на второй хостинг. Запросите поддержку хостинга. Существует так, что хостинг не поддерживает переписывание.

+0

Да, это не разрешено, но я использую общий хостинг, любая идея, как включить его на общем хостинге. – sandip

+0

Если он не включен, как вы получили ошибку 500? – barryhunter