Php Curl下载网页符号与错误

Php Curl下载网页符号与错误,php,curl,Php,Curl,我正在尝试下载一个网页,例如: CURL在这一页上失败了;我怀疑是因为符号。如何避开此符号以完成下载 错误是无法解析主机请查看:和 返回一个字符串,其中除-\之外的所有非字母数字字符均为该字符串。 已替换为百分比(%)符号,后跟两个十六进制数字 和编码为加号(+)的空格。它的编码方式与 WWW表单中发布的数据进行编码,编码方式与中相同 应用程序/x-www-form-urlencoded媒体类型。这与»不同 RFC 3986编码(参见rawurlencode()),由于历史原因, 空格编码为加

我正在尝试下载一个网页,例如:

CURL在这一页上失败了;我怀疑是因为符号。如何避开此符号以完成下载

错误是无法解析主机

请查看:和

返回一个字符串,其中除-\之外的所有非字母数字字符均为该字符串。 已替换为百分比(%)符号,后跟两个十六进制数字 和编码为加号(+)的空格。它的编码方式与 WWW表单中发布的数据进行编码,编码方式与中相同 应用程序/x-www-form-urlencoded媒体类型。这与»不同 RFC 3986编码(参见rawurlencode()),由于历史原因, 空格编码为加号(+)

更新:由于错误是
无法解析主机
,请确保您的
/etc/resolv.conf
文件具有
0644
的权限。这将确保安全性,并允许Apache/PHP读取和解析主机名

您可以通过调用来检查PHP和Apache是否可以访问DNS服务查看:和

返回一个字符串,其中除-\之外的所有非字母数字字符均为该字符串。 已替换为百分比(%)符号,后跟两个十六进制数字 和编码为加号(+)的空格。它的编码方式与 WWW表单中发布的数据进行编码,编码方式与中相同 应用程序/x-www-form-urlencoded媒体类型。这与»不同 RFC 3986编码(参见rawurlencode()),由于历史原因, 空格编码为加号(+)

更新:由于错误是
无法解析主机
,请确保您的
/etc/resolv.conf
文件具有
0644
的权限。这将确保安全性,并允许Apache/PHP读取和解析主机名


如果您正在执行以下操作,可以通过调用来检查PHP和Apache是否可以访问DNS服务

<?php

$url = "http://www.site.com/savings/thispage?OneId=88&SecondId=185";
$encoded = urlencode($url);

// use cURL to fetch $encoded

?>

如果你在做这样的事情

<?php

$url = "http://www.site.com/savings/thispage?OneId=88&SecondId=185";
$encoded = urlencode($url);

// use cURL to fetch $encoded

?>

我试过urlencode,但没用。正在签出rawurlencode。已尝试rawurlencode。url确实是重新编码的;但是,curl仍然失败,出现“无法解析主机”错误。您可以从CLI ping主机,或者将目标主机放入,看看它是否可以得到解析。发现它…是一个cookie问题。我为饼干罐设置了正确的路径,现在它工作正常。谢谢我试过urlencode,但没用。正在签出rawurlencode。已尝试rawurlencode。url确实是重新编码的;但是,curl仍然失败,出现“无法解析主机”错误。您可以从CLI ping主机,或者将目标主机放入,看看它是否可以得到解析。发现它…是一个cookie问题。我为饼干罐设置了正确的路径,现在它工作正常。谢谢你好吗?您是在使用PHP库(),还是通过
system()
()或
shell_exec()
()之类的程序运行它?您是如何启动cURL的?您是在使用PHP库(),还是通过
system()
()或
shell_exec()
()之类的程序运行它?