前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >请正确使用http状态码,谢谢!

请正确使用http状态码,谢谢!

作者头像
爬虫
发布2018-04-08 12:11:53
8130
发布2018-04-08 12:11:53
举报
文章被收录于专栏:Python与爬虫Python与爬虫

最近,由于某些特别原因。打开一些网址一直显示404,

想请问下,xx站的程序员,能不能按照http协议来返回呢?

什么是HTTP状态码451?

根据定义,HTTP 451错误代码状态出现,不代表这个地址是否存在,而代表该网页可能对于国家安全产生危险,或是该网页可能违反著作权、隐私权、亵渎神明或其他法律或法院命令。 该响应代码有如下的性质: 除非另外指明,否则这个响应代码是可以被缓存的。 必须携带一个带有一个Link头部,列出要求封禁该地址的实体URI;且应带有一个"rel"字段,值应为"blocked-by"[1]。

简单的讲 就是由于某些政治原因,所以,该页面不予访问

HTTP451的来源

本代码于2013年由提姆·布雷(Tim Bray)正式提出,主要基于博客Terence Eden的文章所提出的非正式提案[2]。2015年12月18日,此代码由国际网络工程研究团队通过[3]。 451这个代码源于1953年的反乌托邦小说《华氏451度》(纸的燃点为华氏451度),在这部小说中,所有书籍是违禁品[4]。相比较HTTP 403代码,451可更好描述一种由于法律规定或受权威部门要求而导致的封禁状态[5]

一个示例

某地一用户以GET方式请求http://example.org的/index.php路径:

  1. GET /index.php HTTP/1.1
  2. Host: www.example.org

由于用户所在地的某项法律规定,网站不可以向该地区用户返回这个页面,所以服务器做出回应,设置了有效期为一年的缓存头部,并在Link头部中加入了指定的政府部门URL“http://www.xxx.gov.tld”:

  1. HTTP/1.1 451 Unavailable For Legal Reasons
  2. Link: <http://www.xxx.gov.tld>; rel="blocked-by"
  3. Cache-control: max-age=31536000; public
  4. Content-Type: text/html; charset=utf-8
  5. <html>
  6. <head><title>因法律原因不可用</title></head>
  7. <body>
  8. <h1>HTTP/1.1 451 因法律原因,本页面不可用</h1>
  9. <p>根据《某法》第某条之规定,本网站页面对来自某地的访客不可用。</p>
  10. </body>
  11. </html>

本编文章参考于 维基百科 https://zh.wikipedia.org/wiki/HTTP_451

RFC 7725 - HTTP 451的正式RFC文件

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-11-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python爬虫分享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是HTTP状态码451?
  • HTTP451的来源
  • 一个示例
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档