【问题标题】:Why won't the official London 2012 Olympics website let itself be validated?为什么 2012 年伦敦奥运会官方网站不让自己得到验证?
【发布时间】:2012-07-26 14:25:55
【问题描述】:

本着奥林匹克建设精神,我想我会专业地关注官方网站(http://www.london2012.com)。 YSlow 报告了相当多的“F”等级,所以我想我会使用 W3C 验证服务 (http://validator.w3.org) 检查标记...

它不起作用 - 结果我得到了 403(禁止)。谁能解释一下为什么?

【问题讨论】:

  • 我的第一个猜测是该站点正在查看请求者的代理字符串,并且服务器已将验证器识别为不受欢迎的机器人。
  • 我能够使用 Opera 验证它(右键单击 -> 验证源代码,或类似的东西,因为我的 Opera 在 pt-br 中)。 58 个错误,21 个警告。
  • 谢谢。我突然想到我可以将源代码复制并粘贴到验证器中。所以我做了。并收到 22 个警告和 58 个错误。

标签: html performance validation markup w3c-validation


【解决方案1】:

验证器在服务器端被阻止(可能被用户代理或 IP)。

这是服务器抛出的拒绝访问消息的 HTML(通过尝试在验证器工具中 validate the received error document 并勾选 show source 选项获得):

<HTML><HEAD>
<TITLE>Access Denied</TITLE>
</HEAD><BODY>
<H1>Access Denied</H1>
You don't have permission to access "http://www.london2012.com/" on this server.<P>
Reference #18.40140712.1343313311.29cc62c
</BODY>
</HTML>

但不清楚为什么服务器会拒绝访问验证器。

【讨论】:

  • W3C 验证服务报告 58 个错误。也许有人试图避开宣传/审查的眩光?
  • 我对此表示怀疑。使用设置为curlwgetlynx 的用户代理字符串执行 cURL 请求会产生与上述 403 禁止页面 (curl -i -A "lynx") 相同的结果。但是,将用户代理设置为 W3C 验证器工具使用的用户代理 (W3C_Validator/1.3),不是
【解决方案2】:

W3C CSS 验证器在 193 行源代码中发现 24 个 CSS 错误和 38,547 个警告,移动设备有 26 个错误和 0% 的移动友好性

【讨论】:

  • ROFL。干得好,先生。我自己试了一下——大量的警告让我的笔记本电脑上的 IE9 崩溃了。
【解决方案3】:

如果你使用的是 Firefox,你可以使用这个技巧:

  • 安装Web Developer Toolbar
  • 打开网址
  • 在 Web 开发者工具栏中使用“工具”->“验证本地 HTML”

基本上只是将源代码的副本发送到 W3C 验证服务。

【讨论】:

  • 这也是它返回 403 的原因。
  • 我猜你没有尝试它,因为它有效:“检查此文档时发现错误 XHTML 1.0 Strict!结果:59 个错误,21 个警告”这不是 W3C 访问该站点但是 WDT 将源副本发送给验证器。这样就可以了!这就像将代码复制并粘贴到验证器源字段..
猜你喜欢
  • 1970-01-01
  • 2011-02-02
  • 2022-01-13
  • 1970-01-01
  • 2012-09-08
  • 2022-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多