当我们放置第二台服务器时,我必须将网站放下约半小时。使用.htaccess,如何将任何请求重定向到domain.com
到domain.com/holding_page.php
?
答案 0 :(得分: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 未来的要求。
答案 1 :(得分:1)
当我遇到这个问题时,这里是我使用的解决方案(评论中的简短解释):
# nm /opt/developerstudio12.5/lib/compilers/libCrun.so | grep ex_end_init
# nm /opt/developerstudio12.5/lib/compilers/libCrun.a | grep ex_end_init
00000340 T __1cG__CrunLex_end_init6F_v_
除了附加条件和标题之外,主要的想法是在执行维护工作时使用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
,这正是维护期间的情况。使用它也将是SEO友好的,因为机器人不会对Service Unavailable
页面进行索引,并且它们将在指定的503
之后稍后返回以查找实际内容。
在此处阅读更多详情:
答案 2 :(得分:-3)
这样效果更好......
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_URI} !/holding_page.php$
RewriteRule $ /holding_page.php [R=307,L]