2010-03-02 2 views

ответ

5
Options +FollowSymlinks 
RewriteEngine on 
RewriteCond %{REQUEST_URI} !/holding_page.php$ 

RewriteRule $ /holding_page.php$l [R=307,L] 

Используйте 307 (спасибо Piskvor!), А не 302 - 307 means:

Запрошенный ресурс временно находится под другим URI. Поскольку перенаправление МОЖЕТ быть изменено , клиент ДОЛЖЕН продолжать использовать Request-URI для будущих запросов.

+3

+1, но в этом случае я бы использовал временную переадресацию: [R = 307, L] – Piskvor

+0

@Piskvor - отличное предложение, отредактировано! –

+0

Это дает мне ошибку внутреннего сервера? – stef

-3

Это работает лучше ...

Options +FollowSymlinks 
RewriteEngine on 
RewriteCond %{REQUEST_URI} !/holding_page.php$ 
RewriteRule $ /holding_page.php [R=307,L] 
1

Как я наткнулся на эту проблему, вот решение, которое я использовал (краткие пояснения в комментариях):

RewriteEngine On 
RewriteBase/

# do not redirect when using your IP if necessary 
# edit to match your IP 
RewriteCond %{REMOTE_ADDR} !^1\.1\.1\.1 

# do not redirect certain file types if necessary 
# edit to match the file types needed 
RewriteCond %{REQUEST_URI} !\.(jpe?g?|png|gif|css) 

# this holding page that will be shown while offline 
RewriteCond %{REQUEST_URI} !^/offline\.html$ 

# use 503 redirect code during the maintenance job 
RewriteRule ^(.*)$ /offline.html [R=503,L] 
ErrorDocument 503 /offline.html 

# bots should retry accessing your page after x seconds 
# edit to match your maintenance window 
Header always set Retry-After "3600" 

# disable caching 
Header Set Cache-Control "max-age=0, no-cache, no-store" 

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

Код 503 обозначает Service Unavailable, что в точности соответствует требованиям технического обслуживания. Использование этого также будет оптимизировано для SEO, поскольку боты не будут индексировать страницы 503, и они вернутся позже после указанного Retry-After для поиска фактического контента.

Читать подробнее здесь:

Смежные вопросы