PHP确定客户端URL类型

时间:2013-03-19 10:45:20

标签: php curl


我正在编写一个PHP脚本,它接收用户输入的URL,该URL指向用户服务器上的文件。我目前基本上使用cURL库和$url = $_POST['url']作为变量url。然而,在我的研究中,我发现在使用cURL时,我必须使用可能存在问题的网址类型:

  • 网址是SSL或TSL:目前我将$urlhttps://相匹配,以便了解此情况。
  • 网址是用户名/密码保护的:我可以通过匹配:后跟@
  • 来识别这一点

我的问题是,如果提交的网址只是简单地读取www.something.com,是否可以使用PHP来确定网址是否为SSL和/或密码?在这种情况下,我需要提醒用户需要更多信息,并且他们需要提供.pem文件和/或用户名+密码。
我想抓住一个cURL抛出的错误,但我不太确定是哪个。

最诚挚的问候

1 个答案:

答案 0 :(得分:1)

如果网址是SSL,请在curl网站下载certification bundlehttp://curl.haxx.se/ca/cacert.pem)文件并将其保存在您的服务器上,然后将其包含在您的PHP curl脚本中,

curl_setopt($ch, CURLOPT_SSLCERT, 'cacert.pem');

用户无需提供.pem文件。 cert.pem将处理SSL。