Назад | Перейти на главную страницу

Перенаправить WWW в не-WWW без использования отдельного виртуального сервера в Cherokee

Я использую веб-сервер Cherokee и хочу перенаправлять все запросы с www.domain.com на domain.com без создания отдельного виртуального сервера для перенаправления запросов.

в Host Match я установил www.domain.com и domain.com в качестве обслуживаемых доменов в режиме подстановочных знаков. Теперь я предполагаю, что мне нужно создать правило с Redirection обработчик с этими настройками:

Type: External
Regular Expression: ^/(.*)$
Substitution: http://domain.com/$1

Вопрос в том, какое правило выбрать? Я пробовал правило перенаправления с этой настройкой: ^www.domain.com/(.*)$

РЕДАКТИРОВАТЬ: ОТВЕТ

(Поскольку ServerFault пока не позволяет мне ответить на вопрос)

Наконец разобрался. Создайте правило Header введите и выберите Host заголовок. Затем сопоставьте это регулярное выражение: ^www.domain.com$. Установите обработчик на внешнее перенаправление с помощью регулярного выражения: ^/(.*)$ и Замена: http://domain.com/$1.

Сделайте плавный перезапуск, и все будет готово!

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

ЕСЛИ вы действительно хотите изменить адресную строку в браузере (например, с 'www.domain.tld' на 'domain.tld') И тратить трафик И потратить больше времени на загрузку, вы должны просто позволить Cherokee продолжить обслуживание в соответствии с ' сопоставьте 'настройку, которую вы можете настроить для любых хостов, таких как' www ', которые вы не настроили в службе доменных имен (DNS) в качестве записи ресурса CNAME (RR) для вашего пустого домена (domain.tld).

очевидно, что гораздо дешевле использовать DNS для перенаправления любых хостов на чистый домен [т.е. сделать DNS RR: 'host-name IN CNAME domain.tld.' Обратите внимание "." (точка) после '.tld']. даже если вы находитесь в ограниченной среде общего хостинга с использованием чужих серверов имен, они всегда предоставляют возможность настройки записи записи CNAME для вашего DNS.

Итак, это подводит нас к вопросу, зачем вообще использовать какие-либо хосты. вы можете устранить двусмысленность, просто направив все ваши ссылки на domain.tld, а не на host-name.domain.tld.

если вас беспокоит поисковая оптимизация (SEO): не беспокойтесь. "боты" поисковой системы начинаются с 'domain.tld' и DNS. Кроме того, они не считают «хорошим», когда сервер предлагает перенаправление. Таким образом, сокращайте свои ссылки и делайте правильные вещи в DNS, и вам будет намного лучше!

Наконец разобрался. Создайте правило Header введите и выберите Host заголовок. Затем сопоставьте это регулярное выражение: ^www.domain.com$. Установите обработчик на внешнее перенаправление с помощью регулярного выражения: ^/(.*)$ и Замена: http://domain.com/$1.

Сделайте плавный перезапуск, и все будет готово!