#.htaccess #mod-rewrite #url-rewriting
#.htaccess #мод-перезапись #перезапись URL
Вопрос:
у меня проблема с htaccess
все URL-адреса будут перенаправляться через access:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?load=contentamp;url=$1
Домен www.domain.de/nicepage перенаправит на www.domain.de/index.php?load=contentamp;url=nicepage
Теперь я хотел бы перенаправить ‘вложенную папку’:
из www.domain.de/faq/nicefaq в www.domain.de/index.php?load=faqdetailamp;url=nicefaq
Это то, что я пытаюсь:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?load=contentamp;url=$1
RewriteRule ^faq/(.*)$ index.php?load=faqdetailamp;url=$1
Это не работает. каждый раз, когда я вызываю страницу, я перенаправляю на load = content.
Можете ли вы мне помочь, пожалуйста?
заранее спасибо и с наилучшими пожеланиями, Мэддин
Ответ №1:
Оба перезаписываемых элемента соответствуют одному и тому же условию. Поскольку первая, которую вы написали, соответствует всему, вторая никогда не достигается. Просто измените порядок:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^faq/(.*)$ index.php?load=faqdetailamp;url=$1
RewriteRule ^(.*)$ index.php?load=contentamp;url=$1
Надеюсь, это поможет…
Ответ №2:
Попробуйте этот код в вашем файле .htaccess:
Options FollowSymlinks -MultiViews
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^faq/(.*)$ index.php?load=faqdetailamp;url=$1 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/ faq [NC]
RewriteRule ^(.*)$ index.php?load=contentamp;url=$1 [L,QSA]