如何自定义503 Service Unavailable页面
发布网友
发布时间:2022-05-05 02:42
我来回答
共1个回答
热心网友
时间:2022-06-28 17:10
一、什么是503状态码?
503 Service Unavailable是指由于临时的服务器维护或者过载,服务器当前无法处理请求。这个状况是临时的,并且将在一段时间以后恢复。如果能够预计延迟时间,那么响应中可以包含一个 Retry-After 头用以标明这个延迟时间。如果没有给出这个 Retry-After 信息,那么客户端应当以处理500响应的方式处理它。但值得指出的是503状态码的存在并不意味着服务器在过载的时候必须使用它,某些服务器只不过是希望拒绝客户端的连接。
二、503错误页面有什么作用?
503错误页面一般在网站服务器过载、网站功能升级、网络故障等情况下使用,创建503错误页面主要是告诉搜索引擎网站临时关闭,某个页面暂时不能访问,过段时间蜘蛛再来抓取,以免返回404状态码,删除了该网页。
三、如何制作503错误页面?
其实制作503错误页面也很简单,这里以破折君博客为例,介绍了怎样制作503错误页面,具体操作步骤如下:
(1)在网站根目录下创建一个503.php文件。
(2)在创建的文件中添加以下代码:
<?php
ob_start();
//返回503状态码
header('HTTP/1.1 503 Service Temporarily Unavailable');
header('Status: 503 Service Temporarily Unavailable');
//让搜索引擎蜘蛛2013年7月10号下午6点再来爬取网站
header('Retry-After: Fri, 10 July 2013 18:00:00 GMT');
?>
<!DOCTYPEHTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>破折君 | 个人原创独立博客,分享个人兴趣爱好</title>
</head>
<body>
<h1>致各位访客</h1>
<p>博主陪妹子去了,网站维护中</p>
<p>预计将于2013/07/10恢复</p>
</body>
</html>
(3)设置Nginx rewrite规则,将所有页面302临时跳转到503.php
rewrite ^(.*)$ /503.php redirect;
四、注意事项
当服务器或者网站维护可以正常运行时,一定要把之前的302跳转设置和503设置恢复,否则一直跳转到这个页面,让访客和蜘蛛都不能正常访问那就得不偿失了。