Redirect 301 www.www.example.com - PullRequest
       5

Redirect 301 www.www.example.com

4 голосов
/ 23 июня 2009

Я использую сервер LAMP, и мне нужно перенаправить запросы, такие как:

www.www.example.com to www.example.com и другие варианты, такие как (wwww.example.com и т. Д.)

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

Или есть какой-то другой подход, исходящий от призраков?

Ответы [ 3 ]

5 голосов
/ 23 июня 2009

Мне нравится:

# force www IN URL
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
# END force www IN URL

В основном все, что не www.example.com, будет перенаправлено 301'd.

2 голосов
/ 23 июня 2009

См. Эту статью для реализации «подстановочных доменов». Вам нужно будет реализовать как .htaccess, так и модифицировать Vhosts.

http://www.easymodrewrite.com/example-subdomains

Если вас интересует только ограничение "www.www", "wwww." И другими примерами выше, вы можете легко сделать это с помощью некоторого кодирования на стороне сервера (что делает его более гибким, чем реализация большего количества). .htaccess код). Просто определите, что это за поддомен, и перенаправьте куда хотите.

0 голосов
/ 23 июня 2009

Используя виртуальные хосты на основе имени в Apache, вы можете сделать это:

<VirtualHost *:80>
    ServerName example.com
    ServerAlias wwww.example.com www.www.example.com [space seperated list]

    Redirect / http://www.example.com/
</VirtualHost>

Redirect может принимать параметр для указания типа перенаправления.

...