Я перехожу с Apache на Cherokee для некоторых проб
Я хочу сделать перенаправление в чероки, которое я делаю для Apache:
# Перенаправить на каноническое имя WWW RewriteEngine On RewriteCond% {HTTP_HOST}! = Www.domain.com RewriteRule ^ http: //www.domain.com%{REQUEST_URI} [R = 301, L]
Но не могу найти объяснения, как это делается
любая помощь приветствуется
Если вы хотите перенаправить только один конкретный домен / поддомен (или достаточно небольшое количество доменов), вам не нужен отдельный виртуальный хост (хотя вы можете пойти по этому маршруту, если хотите). Вот шаги, чтобы перенаправить голый домен, например domain.com
к его www
поддомен (www.domain.com
) для cherokee v0.99.39:
Virtual Servers
ссылку в левой части навигации, а затем щелкните Nickname
виртуального сервера, с которого вы хотите выполнить перенаправление. Вы, наверное, назвали этот виртуальный сервер domain.com
(или в его Host Match
раздел, в нем есть запись для *domain.com
); или это может быть просто default
виртуальный сервер.Behavior
таб.Add new rule
кнопка.Header
для Rule Type
.Host
для Header
.^domain.com
для Regular Expression
(и нажмите вкладку, чтобы перейти к следующему экрану). В этом сценарии мы добавляем ^
в начало домена, из которого мы хотим перенаправить, поэтому мы просто сопоставляем голый домен, а не какие-либо поддомены.Handler
таб.Redirection
для Handler
./(.*)
для Regular Expression
.http://www.domain.com/$1
(снова нажмите вкладку, чтобы пользовательский интерфейс обработал ваши изменения). В $1
указывает, куда поместить содержимое первой группы захвата из регулярного выражения шага 9.Save
кнопка левой навигатора.http://domain.com/
и убедитесь, что вы перенаправлены на http://www.domain.com/
с 301.)В веб-интерфейсе Cherokee теперь есть шаблон для этого (по крайней мере, в 1.0.8):
vServers
на верхней панели навигацииNew
кнопкаVirtual Server Redirection
под Tasks
example.com
для Origin Domain
www.example.com
для Target Domain
Create
кнопкаВы можете перенаправить несколько доменов на Target Domain
также:
/dev/null
)Host Match
вкладкаMethod
должен быть установлен на Wildcards
(вы можете выбрать Regular Expressions
вместо)Add New
кнопка для добавления дополнительных доменных именИсправление, скорее всего, скоро будет выпущено: http://bugs.cherokee-project.com/722
Нашел ответ
В основном необходимо создать еще один виртуальный хост и настроить обработчик по умолчанию в качестве перенаправления на исходный хост.
Вся информация здесь http://www.cherokee-project.com/doc/modules_handlers_redir.html
Однако я хотел иметь возможность настраивать перенаправления без необходимости воссоздавать больше виртуальных хостов, то есть способ, которым Apache позволяет мне с помощью встроенного Mod Rewrite.
Надеюсь, они скоро для этого создадут обработчик:
т.е. обработчик, который позволяет вам выбрать, чтобы www.domain.com и domain.com переходили к одному и тому же корню и выбирали между www.domain.com или .domain.com в качестве основного, перенаправляя другой :) Надеюсь, что это имеет смысл.