1

我正在构建一个邮件解析器脚本,它将从邮箱中获取内容并向 WebPage 后端(在 Zend_Framework 上)发送一些“更新”请求。

这个想法是让 mailChecker.php 文件独立并使用 Cron Job 调用它。

一切正常,直到我尝试调用更新网址:

file_get_content("http://mySite.com/update-item/id/1");

该框架将我的请求重定向到登录表单...

解决这个问题的最干净的方法是什么?我不会过多地编辑登录功能

有没有办法跳过特定请求的身份验证检查?(这里的安全性不是大问题)

或者在我调用更新之前为我的独立脚本创建会话的简单方法:file_get_content("http://mySite.com/easy-auth/admin/admin");

寻找一个简单/丑陋的解决方案,我不会过多地编辑当前的身份验证。

4

2 回答 2

1

为什么不在调用更新 url 之前像往常一样进行身份验证?如果有一个简单的基于会话的身份验证,您可以 curl 登录操作传递登录详细信息并启用 cookie jar。然后再次 curl 以从更新脚本中获取数据。

另一种解决方案,如果真的没有安全要求,只需禁用对来自本地主机的传入请求的身份验证检查。

于 2012-12-11T11:07:26.843 回答
0

我知道您正在寻求快速而肮脏的解决方案,但这是糟糕的设计。您的 cron 作业应该运行 update-item 操作运行的任何代码(最好不要复制它)。向您自己的站点发出 Web 请求会减慢 cron 作业的速度,在您的服务器上增加不必要的负载,并导致与您现在遇到的完全一样的问题。

我建议将更新项逻辑移动到控制器调用的服务类中。然后,您可以从您的 cron 作业中调用相同的方法。这更清洁、更快、更容易进行单元测试。

于 2012-12-11T11:09:37.033 回答