我试着安装这个.htaccess来通知我的用户网站维护。看起来第一个[L]不工作,第二个重写做的一切。你们是怎么做网站维护留言的?
RewriteEngine on RewriteRule ^s/down$ index.html [L] RewriteRule ^(.*)$ http://metaward.com/s/down [R=302,L]
gajydyqb1#
这看起来是可行的(但是我必须在PHP中设置状态代码)
RewriteEngine on RewriteCond %{REQUEST_URI} !^/static/.*$ RewriteCond %{REQUEST_URI} !^/media/.*$ RewriteRule .* down.php [L]
以及down.php中的
<?php header('HTTP/1.1 503 Service Temporarily Unavailable',true,503); ?>
有什么问题吗?我主要关心的是用户看到什么(这就是为什么我保持静态内容)和搜索引擎看到什么(503状态码)。
wsxa1bj12#
当我想关闭网站进行维护时,我在网站上使用的重写规则是:
RewriteCond %{REMOTE_ADDR} !=MY_IP_ADDRESS RewriteRule ^$ /down.html [L] RewriteCond %{REMOTE_ADDR} !=MY_IP_ADDRESS RewriteRule [^/down.html$] /down.html [L]
除了down.html之外的所有内容都被重定向到down.html --当然除了我:显然,我希望能够测试正在执行的维护操作当我完成的时候,我只是评论这四行。
jexiocij3#
我使用Apache作为ruby on Rails应用程序代理。我唯一要做的就是
ProxyPass /custom-errors ! ErrorDocument 503 /custom-errors/maintenance-message.html
到我的httpd.conf,并确保:[Apache安装]/htdocs/自定义错误/维护消息.html已存在。
mpgws1up4#
我没有看到任何人使用Retry-After头。我读过(但没有链接了,因为我读了一段时间前),你应该使用一个503组合与一个Retry-After n(n =重试的秒数; 3600是一个小时)的标题。如果你使用503和重试后组合,特别是在你的robots.txt/sitemap它不应该混乱的链接和页面排名搜索引擎优化,如果你不离开这样很长一段时间。
g2ieeal75#
您不需要外部重定向。只需发送503状态代码和错误文档。
RewriteCond %{ENV:REDIRECT_STATUS} !=503 RewriteRule ^(.*)$ /503.html [R=503,L] ErrorDocument 503 /503.html
但是,您需要Apache 2.x来使用带有R标志而不是3xx的不同状态代码。
5条答案
按热度按时间gajydyqb1#
这看起来是可行的(但是我必须在PHP中设置状态代码)
以及down.php中的
有什么问题吗?我主要关心的是用户看到什么(这就是为什么我保持静态内容)和搜索引擎看到什么(503状态码)。
wsxa1bj12#
当我想关闭网站进行维护时,我在网站上使用的重写规则是:
除了down.html之外的所有内容都被重定向到down.html --当然除了我:显然,我希望能够测试正在执行的维护操作
当我完成的时候,我只是评论这四行。
jexiocij3#
我使用Apache作为ruby on Rails应用程序代理。
我唯一要做的就是
到我的httpd.conf,并确保:[Apache安装]/htdocs/自定义错误/维护消息.html已存在。
mpgws1up4#
我没有看到任何人使用Retry-After头。我读过(但没有链接了,因为我读了一段时间前),你应该使用一个503组合与一个Retry-After n(n =重试的秒数; 3600是一个小时)的标题。如果你使用503和重试后组合,特别是在你的robots.txt/sitemap它不应该混乱的链接和页面排名搜索引擎优化,如果你不离开这样很长一段时间。
g2ieeal75#
您不需要外部重定向。只需发送503状态代码和错误文档。
但是,您需要Apache 2.x来使用带有R标志而不是3xx的不同状态代码。