IIRF Regex для доменных переписываний - PullRequest
1 голос
/ 09 ноября 2011

Я видел множество примеров перезаписи URL-адресов на основе субдомена, но я пытаюсь перезаписывать URL-адреса на основе самого имени домена, в частности, обслуживать контент из подпапки с именем домена в нем.

Например, я бы хотел

http://www.site1.com/sub/folders/long-html-filename.htm переписать в или /sites/www.site1.com/sub/folders/long-html-filename.htm или же http://www.masterdomain.com/sites/www.site1.com/sub/folders/long-html-filename.htm

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

Спасибо!

Ответы [ 2 ]

0 голосов
/ 10 ноября 2011

Кевин - вы были близко. Автор IIRF дал мне остаток пути:

RewriteRule ^/(?!sites/)(.*)$ /sites/%{HTTP_HOST}/$1

Теперь я просто пытаюсь выяснить, как совместить это с принудительным WWW RedirectRule.

Еще один камень преткновения ... У меня есть это:

RewriteCond %{HTTP_HOST} ^(?!www)[^\.]+\.[^\.]+$ [I]
RedirectRule ^/(.*) http://www.%{HTTP_HOST}/$1 [R=301]

RewriteRule ^/(?!sites/)(.*)$ /sites/%{HTTP_HOST}/$1

Но, похоже, это не работает, я просто получаю тайм-аут.

0 голосов
/ 09 ноября 2011

Вы пытались использовать% {HTTP_HOST} для захвата имени хоста?Может быть, что-то вроде этого будет работать:

RewriteRule ^/(.*) /sites/%{HTTP_HOST}/$1
...