0


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

  • URL 是 SSL 或 TSL:目前我正在匹配$urlwithhttps://来捕捉这个。
  • URL 受用户名/密码保护:我可以通过匹配一个:后跟一个@

但是,我的问题是,如果提交的 url 只是读取,是否有可能使用 PHP 来确定 URL 是否受 SSL 和/或密码保护www.something.com?在这种情况下,我需要提醒用户需要更多信息,并且他们需要提供 .pem 文件和/或用户名 + 密码。
我正在考虑捕获一个 cURL 抛出的错误,但我不太确定是哪个。

此致

4

1 回答 1

1

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

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

用户不必提供.pem文件。cert.pem将处理 SSL。

于 2013-03-19T11:02:41.003 回答