【问题标题】:Cronjob with password protected site (.htaccess)带有密码保护站点 (.htaccess) 的 Cronjob
【发布时间】:2012-05-11 17:08:42
【问题描述】:

我想创建一个每次 X 次打开网页的 cronjob。

此网页受 .htaccess 密码保护(用户=管理员,密码=密码)。我给出的指令如下:

wget --user=admin --password='pass' http://www.mywebsite.com/test.php

但是 cron 给了我以下错误:

--2012-05-02 10:14:01--  http://www.mywebsite.com/test.php
Resolving www.mywebsite.com... IP
Connecting to www.mywebsite.com|IP|:80... connected.
HTTP request sent, awaiting response... 401 Authorization Required
Reusing existing connection to www.mywebsite.com:80.
HTTP request sent, awaiting response... 403 Forbidden
2012-05-02 10:14:01 ERROR 403: Forbidden.

我也试过这样做:

wget admin:pass@http://www.mywebsite.com/test.php

但有类似的错误。我该如何解决?提前感谢您的帮助。

【问题讨论】:

  • 看起来错误的密码或用户名正在到达服务器。您能否在 shell 提示符下成功运行 wget 命令,即不使用 cron?
  • Anders,我在使用 shell 提示时也收到了同样的错误。但是密码是正确的,因为通过浏览器就可以了。
  • 那么您的密码必须包含一些必须正确编码或转义的特殊字符 - 它是否包含类似$\ !" ...?
  • 那么现在是使用嗅探器比较浏览器和 wget 中的 http 流量的好时机。 Authorization: 标头在两种情况下都应该相同。请注意,可能还有其他原因导致此问题,例如对 ip 或 useragent 的限制...
  • 嗨,我的 VPS 提供商给了我使用 -U firefox 的解决方案:wget -U firefox --user=admin --password='pass' http://www.mywebsite.com/test.php 现在它可以工作了

标签: .htaccess cron wget password-protection cron-task


【解决方案1】:

将 auth 参数添加到 url。直接调用 url 时,这对我有用。

http://yoururl.ext?auth=id:psw

我不知道它有多安全......

【讨论】:

    【解决方案2】:

    你犯了一个小错误。

    在网址前保留 http://

    你有

    管理员:pass@http://www.mywebsite.com/test.php

    改成

    http://admin:pass@www.mywebsite.com/test.php

    希望有效。

    【讨论】:

      【解决方案3】:

      wget --user admin --password pass http://www.mywebsite.com/test.php

      每分钟打开一个带有 htaccess 密码的网站

      */1 * * * *  wget -O /dev/null --user admin --password pass "http://www.mywebsite.com/test.php" > /dev/null 2>&1
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-04-02
        • 2014-09-06
        • 1970-01-01
        • 2014-05-11
        • 2011-09-20
        • 2018-09-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多