выражение mod_rewrite для подпапок? - PullRequest
0 голосов
/ 24 мая 2011

У меня включены поддомены с подстановочными знаками, и это переписать в моем корневом каталоге, чтобы перехватить поддомен и папку:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !www.mysite.com$ [NC]
RewriteCond %{HTTP_HOST} ^(www\.)?([^.]+)\.mysite\.com$ [NC]
RewriteRule ^(.*)$ process.php?id=%2
RewriteRule ^([^/.]+)/?$ process.php?id=%2/$1 [L]

вторая-последняя строка должна просто привести нас к process.php? Id = поддомену, если подпапка не запрошена. Последняя строка должна привести нас к process.php? Id = subdomain / subfolder /, если действительно запрашивается подпапка (как в subdomain.mysite.com/subfolder/).

Каждый из них работает сам по себе, но вместе они не работают. Я просто хочу, чтобы он использовал первую, если не указана подпапка, или последнюю, если она есть. Я подозреваю, что они должны быть объединены с регулярным выражением, но я не знаю, как это выразить?

1 Ответ

0 голосов
/ 24 мая 2011

Поменять местами порядок последних 2 строк.Возможно, вторая-последняя строка становится жадной и совпадает в обоих случаях ...

...