2

我的网站有一个奇怪的问题:当我尝试使用 W3C Validator 验证 HTML 时,我收到一条 403 Forbidden 消息并且我无法检查它。我尝试了另一个验证器并且它有效......
但是当 Disqus 尝试加载时,在我网站的 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>

我怎么解决这个问题?
非常感谢你的帮助!

4

1 回答 1

0

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

在我的情况下,我试图使用 PHP 验证我的网站,并从验证器(使用get_headers)得到 403 Forbidden 响应。我通过设置 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 响应

于 2015-03-12T14:10:49.597 回答