
Tenho um cliente que agora deseja apontar algumas dezenas de URLs para seu site principal. Eu os adicionei como serveralias no arquivo de configuração do Apache do site... então agora todos esses URLs apontam para o principal... excelente.
O problema que tenho é que, se QUALQUER um desses alias for acessado na raiz (ou seja, www.domain.com em vez de www.domain.com/some-page/), preciso redirecioná-los para uma página específica dentro do site ( ou seja, qualquer pessoa que acesse domínio.com pode precisar ser enviada para domínio.com/special-landing-page/). No entanto, qualquer visita a qualquer coisa que não seja a página de destino deve continuar normalmente, sem redirecionamentos.
Estou lutando contra isso há algumas horas e não consigo encontrar a melhor solução. Alguém tem alguma sugestão?
EDIT: Ah, eu estava realmente fazendo isso .. mas não consegui fazê-lo funcionar. Algum comentário:
ServerName mgi.co.uk ServerAlias mgi.co.uk *.mgi.co.uk ServerAlias central-heating-nottingham.co.uk *.central-heating-nottingham.co.uk
RewriteCond %{HTTP_HOST} ^(www.)?central-heating-nottingham.co.uk$ [NC]
RewriteRule ^$ /nottingham [R,L]
DocumentRoot /home/ben/sites/mgi/releases/current/mgi
WSGIScriptAlias and other WSGI stuff....
Atualização: estou recebendo a seguinte saída no log ...
Estou recebendo a seguinte saída:
127.0.0.1 - - [15/Jun/2010:22:07:50 +0100] [mgi.co.uk/sid#84464a8][rid#8711c60/subreq] (1) passar por /
127.0.0.1 - - [15/Jun/2010:22:07:56 +0100] [mgi.co.uk/sid#84464a8][rid#870dc50/initial] (2) mecanismo de reescrita de inicialização com uri /favicon solicitado. ico
127.0.0.1 - - [15/Jun/2010:22:07:56 +0100] [mgi.co.uk/sid#84464a8][rid#870dc50/initial] (3) aplicando o padrão '^$' ao uri ' /favicon.ico'
127.0.0.1 - - [15/Jun/2010:22:07:56 +0100] [mgi.co.uk/sid#84464a8][rid#870dc50/initial] (1) passe por /favicon.ico
127.0.0.1 - - [15/Jun/2010:22:07:56 +0100] [mgi.co.uk/sid#84464a8][rid#8713c68/subreq] (2) mecanismo de reescrita de inicialização com uri /favicon solicitado. ico
Responder1
RewriteCond %{HTTP_HOST} ^(www.)?domain.com$ [NC]
RewriteRule ^$ /special-landing-page [R,L]
poste o que você tentou.
Use o seguinte no arquivo de configuração para gerar um log de reescrita para ver o que está acontecendo
RewriteLogLevel 9
RewriteLog /tmp/rl
Desative isso posteriormente, pois pode consumir bastante o servidor em um site movimentado.