Почему этот RewriteRule сломан? - PullRequest
0 голосов
/ 23 сентября 2010

Хорошо, ребята, я в растерянности.

RewriteCond %{HTTP_HOST} ^domain.nl$
RewriteRule ^(.*)$ poker/$1 [L]

Выдает мне ошибку 500.Если я удалю редирект и зайду в / poker / вручную, это сработает.Если я использую это:

RewriteCond %{HTTP_HOST} ^domain.nl$
RewriteRule ^$ poker/ [L]

Показана первая страница (но css нет, потому что, очевидно, что-либо после / не перенаправлено.

Что может вызвать разрыв (.*)?

Перед этим правилом нужно просто удалить www:

RewriteCond %{HTTP_HOST} ^www\.([a-z-]+)\.([a-z]{2,3})
RewriteRule ^(.*)$ http://%1.%2/$1 [R=301,L]

После того, как ничто не может помешать.

1 Ответ

0 голосов
/ 23 сентября 2010

Это было так просто.

RewriteCond %{HTTP_HOST} ^domain.nl$
RewriteRule ^(.*)$ poker/$1 [L]

Дает бесконечный цикл.Мне просто нужно было добавить:

RewriteCond %{HTTP_HOST} ^domain.nl$
RewriteCond %{REQUEST_URI} !^/poker
RewriteRule ^(.*)$ poker/$1 [L]

(или, как я только что узнал, создание пустого .htaccess с помощью RewriteEngine On в / poker / dir также помогло).

...