W3C验证返回403 Forbidden

时间:2012-08-31 11:07:27

标签: .htaccess w3c-validation http-status-code-403

我的网站有一个奇怪的问题:当我尝试使用W3C Validator验证HTML时,我收到403 Forbidden消息,我无法检查它。我尝试了另一个验证器,它起作用了...... 但是,当我试图在我的网站的wordpress博客部分尝试加载时,我得到另一个403错误。

我更改了文件权限但没有任何改变......但网站在浏览器中运行良好,加载时没有任何错误!

我还检查了robots.txt.htaccess,但没有任何内容可以屏蔽该网站。这是我的根.htaccess文件:

SetEnv PHP_VER 5
SetEnv REGISTER_GLOBALS 0
DirectoryIndex index.php

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^apps/wishonlist/appstore(/)?$ http://clk.tradedoubler.com/click?p=24373&a=1947754&url=http://itunes.apple.com/it/app/wishonlist/id418044882?mt=8&uo=4&partnerId=2003 [R=301,L]
</IfModule>

我该如何解决这个问题呢? 非常感谢你的帮助!

1 个答案:

答案 0 :(得分:0)

我不确定您是如何尝试验证您的网站的;通过手动输入或以编程方式(例如使用PHP)。

在我的情况下,我试图使用PHP验证我的网站,并从验证器获得403 Forbidden响应(使用get_headers)。我通过设置User-Agent标头解决了它,如下所示:

$curl = curl_init();

curl_setopt($curl, CURLOPT_URL, "http://validator.w3.org/check?uri=" . urlencode($url));
curl_setopt($curl, CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HEADER, true);
// Alternative: curl_setopt($curl, CURLOPT_USERAGENT, '...');
curl_setopt($curl, CURLOPT_HTTPHEADER, array("User-Agent: Some user-agent here"));

$headers = curl_exec($curl);

这给了我一个不错的200 OK回复

相关问题