使用cURL表单linux服务器访问站点时返回错误的原因是什么?但在Chrome中打开此站点成功。
ctrmrzij1#
在发送请求时查看浏览器的标头,并将相同的标头添加到cURL请求。一些服务器需要一些头,浏览器发送默认的,但不是cURL。
cyvaqqii2#
要避免/抑制SSL错误,请使用-k标志,即
-k
curl -k ...
polkgigr3#
我在curl上有301 Moved Permanently错误,但正在浏览器上工作。
301 Moved Permanently
但是当我深入研究时,有Location要移动到位置,这将是有效的。这可能是当服务器使用TLS时。
Location
$ curl -v http://www.shaharma.com/location/v1/US/zipcode/98104 * Trying 172.111.99.100... * TCP_NODELAY set * Connected to www.shaharma.com (172.111.99.100) port 80 (#0) > GET /location/v1/US/zipcode/98104 HTTP/1.1 > Host: www.shaharma.com > User-Agent: curl/7.54.0 > Accept: */* > < HTTP/1.1 301 Moved Permanently < Content-Length: 0 < Location: https://www.shaharma.com/location/v1/US/zipcode/98104 < Cache-Control: max-age=0 < Expires: Fri, 01 Dec 2017 19:40:14 GMT < Date: Fri, 01 Dec 2017 19:40:14 GMT < Connection: Keep-Alive < Set-Cookie: UID=52679eee-c06c-49fc-893a-69fd7e46bad0; expires=Fri, 25-Feb-2028 19:40:14 GMT; path=/; domain=.shaharma.com < Set-Cookie: SID=1ada5fa9-0ace-4f4e-b75b-7a756b8da934; path=/; domain=.shaharma.com < Set-Cookie: shaharma_loc_lb=p-loc-w; expires=Fri, 01-Dec-2017 19:50:14 GMT; path=/; domain=.shaharma.com < Set-Cookie: bby_rdp=l; expires=Sat, 02-Dec-2017 19:40:14 GMT; path=/; domain=.shaharma.com < * Connection #0 to host www.shaharma.com left intact
此外,您可以后藤浏览器并查看网络,其中将包含头信息。
rhfm7lfc4#
对我来说,这是因为我在nginx中这样配置了acme.sh生成的证书:
ssl_certificate /root/.acme.sh/my.domain.com_ecc/my.domain.com.cer; ssl_certificate_key /root/.acme.sh/my.domain.com_ecc/my.domain.com.key;
但我需要使用全链证书配置它:
ssl_certificate /root/.acme.sh/my.domain.com_ecc/fullchain.cer; ssl_certificate_key /root/.acme.sh/my.domain.com_ecc/my.domain.com.key;
4条答案
按热度按时间ctrmrzij1#
在发送请求时查看浏览器的标头,并将相同的标头添加到cURL请求。一些服务器需要一些头,浏览器发送默认的,但不是cURL。
cyvaqqii2#
要避免/抑制SSL错误,请使用
-k
标志,即polkgigr3#
我在curl上有
301 Moved Permanently
错误,但正在浏览器上工作。但是当我深入研究时,有
Location
要移动到位置,这将是有效的。这可能是当服务器使用TLS时。此外,您可以后藤浏览器并查看网络,其中将包含头信息。
rhfm7lfc4#
对我来说,这是因为我在nginx中这样配置了acme.sh生成的证书:
但我需要使用全链证书配置它: