【问题标题】:wget download file - --no-check-certificate error?wget 下载文件 - --no-check-certificate 错误?
【发布时间】:2021-08-02 03:46:37
【问题描述】:

我有一个 cron 每 24 小时下载一个 csv 数据到我的服务器。因为托管此 csv 的提供商只允许浏览器下载 csv 文件,所以我伪造了我的身份。但问题是我仍然得到一个错误。

有谁知道我该如何解决这个问题?

我的 wget 查询:

wget --no-check-certificate -O "/httpdocs/cronjob/data/gamesdeal.csv" "http://www.gamesdeal.com/media/feedgenerator/Gamekey.csv" --header="User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:23.0) Gecko/20100101 Firefox/23.0" --header="Accept: image/png,image/*;q=0.8,*/*;q=0.5" --header="Accept-Language: en-US,en;q=0.5" --header="Accept-Encoding: gzip, deflate" --header="Referer: http://www.gamesdeal.com"

我返回的错误:

--2017-03-13 02:55:02--  http://www.gamesdeal.com/media/feedgenerator/Gamekey.csv
Resolving www.gamesdeal.com (www.gamesdeal.com)... 104.25.181.29, 104.25.180.29, 2400:cb00:2048:1::6819:b41d, ...
Connecting to www.gamesdeal.com (www.gamesdeal.com)|104.25.181.29|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://www.gamesdeal.com/media/feedgenerator/Gamekey.csv [following]
--2017-03-13 02:55:02--  https://www.gamesdeal.com/media/feedgenerator/Gamekey.csv
Connecting to www.gamesdeal.com (www.gamesdeal.com)|104.25.181.29|:443... connected.
WARNING: cannot verify www.gamesdeal.com's certificate, issued by 'CN=COMODO ECC Domain Validation Secure Server CA 2,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB':
  Unable to locally verify the issuer's authority.
HTTP request sent, awaiting response... 200 OK
Length: 623444 (609K) [application/octet-stream]
Saving to: '/httpdocs/cronjob/data/gamesdeal.csv'

     0K .......... .......... .......... .......... ..........  8% 2.58M 0s
    50K .......... .......... .......... .......... .......... 16% 3.96M 0s
   100K .......... .......... .......... .......... .......... 24% 6.85M 0s
   150K .......... .......... .......... .......... .......... 32% 8.32M 0s
   200K .......... .......... .......... .......... .......... 41% 5.89M 0s
   250K .......... .......... .......... .......... .......... 49% 10.2M 0s
   300K .......... .......... .......... .......... .......... 57% 10.4M 0s
   350K .......... .......... .......... .......... .......... 65% 6.14M 0s
   400K .......... .......... .......... .......... .......... 73% 8.54M 0s
   450K .......... .......... .......... .......... .......... 82% 9.62M 0s
   500K .......... .......... .......... .......... .......... 90% 7.48M 0s
   550K .......... .......... .......... .......... .......... 98% 4.24M 0s
   600K ........                                              100% 10.9M=0.1s

2017-03-13 02:55:02 (5.97 MB/s) - '/httpdocs/cronjob/data/gamesdeal.csv' saved [623444/623444]

您好,谢谢!

【问题讨论】:

    标签: php csv ssl cron wget


    【解决方案1】:

    没有错误,但警告--no-check-certificate 使 wget 在验证失败的情况下继续,但它仍然会抱怨 - 如果没有设置该选项,wget 将在验证失败后停止。

    如果您有意使用该选项,则无需担心。如果你想摆脱它,你只需要使用广为人知的 CA 的证书,或者使用--ca-directory--ca-certificate 等选项让wget 知道你的证书颁发者。

    wget 文档:2.8 HTTPS (SSL/TLS) Options

    编辑

    受信任的证书基本上是指由应用程序已知的 CA 颁发的证书 - 有已知和受信任的 CA 的数据库,如果您的证书颁发者匹配,那么一切都很好。如果不是,则会显示警告。要摆脱这种情况,您需要告诉应用您希望它也信任您的 CA,这就是您可以通过使用前面提到的选项来实现的目标。

    【讨论】:

    • 我不担心。但是如果我的 cron 抛出任何问题,我想得到通知。如果我只选择“错误通知我”,我会收到此消息。所以我想修复那个“警告”。因为那时我仍然收到错误消息,但不是这个。所以,你说加--ca-certificat
    • 我应该在哪里添加它? - 如果我在--no-check-certificate 后面添加它,我会收到错误消息...
    • 添加它而不知道你到底在做什么在大多数情况下不会产生太大的影响。你必须RTFM first
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多