999 HEAD 请求LinkedIn上的错误代码
我们在 PHP 应用程序中使用 curl HEAD 请求来验证通用链接的有效性。我们检查状态代码只是为了确保用户输入的链接有效。指向所有网站的链接均已成功,但LinkedIn除外。
虽然它似乎在本地(Mac)工作,但当我们尝试从任何Ubuntu服务器请求时,LinkedIn返回999状态代码。不是API请求,只是一个简单的卷曲,就像我们对其他每个链接所做的那样。我们已经在几台不同的机器上尝试过,并尝试更改用户代理,但没有骰子。如何修改我们的 curl,以便工作链接返回 200?
HEAD 请求示例:
curl -I --url https://www.linkedin.com/company/linkedin
Ubuntu 计算机上的示例响应:
HTTP/1.1 999 Request denied
Date: Tue, 18 Nov 2014 23:20:48 GMT
Server: ATS
X-Li-Pop: prod-lva1
Content-Length: 956
Content-Type: text/html
为了更好地回应@alexandru-古津斯基。我们已尝试屏蔽用户代理。总结一下我们的试验:
- Mac机器+ Mac UA =>工作正常
- Mac machine + Windows UA = >工作
- Ubuntu 远程计算机 + (无 UA 更改) = > 失败
- Ubuntu 远程计算机 + Mac UA = > 失败
- Ubuntu 远程计算机 + Windows UA = > 失败
- Ubuntu 本地虚拟机(在 Mac 上)+(无 UA 更改)=>失败
- Ubuntu 本地虚拟机(在 Mac 上)+ Windows UA = > 工作正常
- Ubuntu 本地虚拟机(在 Mac 上)+ Mac UA = >工作正常
所以现在我认为他们阻止了任何不提供备用UA的curl请求,并且还阻止了托管服务提供商?
有没有其他方法可以检查指向LinkedIn的链接是否有效,或者它是否会导致从使用PHP的Ubuntu机器到他们的404页面?