2013-05-01 3 views
1

Я не могу заставить мой .htaccess работать, я пытаюсь переписать все URL-адреса, которые не являются настоящими файлами или папками для моего index.php. Каталог Я в есть/ОЕ переписывание только кажется, работает, когда я использую этот .htaccessRewriteBase не применяется

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteBase/
    RewriteRule ^index\.php$ - [L] 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule . /cms/index.php [L] 
</IfModule> 

Когда я пытаюсь использовать RewriteBase/CMS/и измените последнюю линию. /index.php [L], как это означало бы, переписывающийся не переписывает на локальный/CMS/index.php, а вместо этого он получает переписанный на локальный/index.php

ответ

1

Попробуйте использовать эту версию:

RewriteEngine On 
RewriteBase /cms/ 

RewriteRule ^index\.php$ - [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . index.php [L] 

Обратите внимание, что я использую index.php вместо /index.php с RewriteBase, чтобы убедиться, что загружен относительный URI.

+0

Отлично работает, я удивлен, что не понял этого. –

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