【发布时间】:2017-07-27 12:41:54
【问题描述】:
curl 在我的本地项目中似乎不起作用。
这个例子对我没有任何显示:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Exemple d'utilisation de curl</title>
</head>
<body>
<?php
// Url de la page dont vous voulez récupérer le contenu (plus précisément : le code source)
$url = 'http://fr.wikipedia.org/wiki/CURL';
// Initialise une session cURL
$ch = curl_init();
// Défini quelques options
// - Indique l'url auquel curl devra accéder
curl_setopt($ch, CURLOPT_URL, $url);
// - Retourne le contenu par la fonction curl_exec au lieu d'afficher directement le contenu récupéré
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// - Défini un user-agent à envoyer au serveur. Vous pouvez par exemple envoyer un user-agent d'un téléphone Android, d'un iPhone, ... pour tenter de récupérer le contenu d'une version mobile d'un site web
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0');
// - Exécute la session cURL fournie et stocke le contenu récupéré dans la variable $resultat (grâce à l'option CURLOPT_RETURNTRANSFER)
$resultat = curl_exec ($ch);
// - Ferme une session cURL et donc la connexion au serveur distant
curl_close($ch);
// Affiche le contenu récupérer par curl
echo $resultat;
?>
</body>
</html>
我在 Windows 8 上使用 xampp。PHP 5.6。
我尽一切努力让它发挥作用(有些已经完成):
未注释的扩展名:php.ini 文件中的 php_curl.dll
在 php.ini 中未注释 extension_dir="C:\xampp\php\ext"
将这些文件添加到 c:/xampp/php 和 - 确保 - 在 c:/WINDOWS/System32 中:ssleay32.dll、libssh2.dll、libeay32.dll
php_curl.dll 位于 c:/xampp/php/ext
- 确保 PATH 正确完成:C:\xampp\php
- 我重新启动计算机以确保一切都已正确初始化
我不明白为什么它仍然不起作用......有什么想法吗?
【问题讨论】:
-
这与 CURL 不工作无关。维基百科有一个 301 重定向到它的 https URL,并且您调用的 http URL 没有
CURLOPT_FOLLOWLOCATION标志。即使这样,您可能仍然需要禁用CURLOPT_SSL_VERIFYPEER。