Удалите префикс WWW с вашего сайта
Как переполнение стека (и другие веб-сайты) удаляет префикс "www", когда он вводится как часть URL-адреса?
Это перенаправление, переписывание или что-то еще полностью?
Обновление: мне особенно хотелось бы узнать в контексте IIS 6
Ответы
Ответ 1
Увольнение Fiddler, мы можем видеть, что ответы сервер с "Перенос 301 постоянно" и ссылается на /fooobar.com/....
Поскольку StackOverflow размещен на Windows 2k8 IIS7, они сразу же перенаправили его в IIS7.
FYI:
список статусов HTTP
Если вы являетесь разработчиком .NET, вы можете знать "Respose.Redirect", это создает статус перетаскиваемого объекта 302. Поисковые системы, такие как коды статуса в этом случае, лучше, потому что они знают, что в будущем они не должны возвращаться на www.stackoverflow.com.
Ответ 2
В Apache он выглядит так (внутри файла .htaccess):
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
Ответ 3
Легкий способ сделать это - использовать директиву Apache "Переадресация":
<VirtualHost *:80>
ServerName www.example.com
Redirect permanent / http://example.com/
</VirtualHost>
<VirtualHost *:80>
ServerName example.com
# remainder of server configuration goes here
</VirtualHost>
Директива Redirect автоматически сохраняет все, что указано в /
в URL-адресе. Я считаю, что этот метод легче читать и понимать, чем метод Rewrite.
Ответ 4
Вы можете сделать это несколькими способами, используя mod_rewrite и перенаправление - это мой любимый. Что-то вроде этого:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.cuenca.co$ [NC]
RewriteRule ^(.*)$ http://cuenca.co/$1 [R=301,L]
Ответ 5
перенаправлять. субдомен "www.stackoverflow.com" просто перенаправляется на "stackoverflow.com".
Ответ 6
Вам потребуется добавленная запись dns по умолчанию, указывающая на ваш веб-сервер.
ping site.com и убедитесь, что ip указывает на веб-сервер, если вам не нужно добавлять запись DNS по умолчанию.
для базовой настройки:
Вам нужно будет добавить заголовки хостов http://www.visualwin.com/host-header/
Создайте 1 сайт с хост-узлом www.site.com
На вкладке "Домашний каталог" установите для него постоянное перенаправление на http://site.com
Создайте 2-й сайт с заголовком узла сайта site.com
Если вы хотите, чтобы www.site.com/file.html перенаправлялся на сайт site.com/file.html, вам понадобится более продвинутая настройка с чем-то вроде ISAPI_Rewrite или использование пользовательских 404 страниц для этого.
Ответ 7
Это еще далеко, но насколько я знаю, это настройка DNS. Я думаю, вам не нужно указывать HOST-адрес (WWW - это имя хоста (или компьютера/кластера...), на котором находится сайт.).
Я думаю, вы можете настроить его для отправки всех запросов на хост по умолчанию.
Не 100% уверен, но проверьте, что возможно с DNS.
Надеюсь, что это поможет или, по крайней мере, поможет вам двигаться в правильном направлении.
Ответ 8
Вы можете сделать то, что mod_rewrite делает для Apache, с сопоставимым URL-переписателем для IIS. Хороший IIRF. Правило:
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [I]
RedirectRule ^(.*)$ http://example.com/$1 [R=301]
Вы также можете подстановочить имя хоста так:
RewriteCond %{HTTP_HOST} ^(.+)\.example\.com$ [I]
RedirectRule ^(.*)$ http://example.com/$1 [R=301]
IIRF может свободно использоваться.
Ответ 9
Для apache
<VirtualHost *:80>
ServerName yourdomain.tld
ServerAlias www.yourdomain.tld