【问题标题】:Exchange Web Services request returns 401 on some servers using PHP-EWSExchange Web 服务请求在使用 PHP-EWS 的某些服务器上返回 401
【发布时间】:2012-02-02 20:41:26
【问题描述】:

我有一个小的 CodeIgniter 2.1.0 应用程序,它使用 PHP-EWS 连接到 Exchange 2007 服务器并返回一组日历项。

它在我的本地 MAMP 开发机器上运行良好。当我部署到我的登台服务器进行测试(Bluehost 共享主机)时,我收到以下错误:

PHP 致命错误:未捕获异常“EWS_Exception”,消息“SOAP 客户端返回状态为 401”

有什么想法吗?

【问题讨论】:

  • 听起来您的凭据没有通过 SOAP 消息正确传递。您应该分享您的代码,以便我们看到问题。
  • 401 是“未经授权”的错误代码。看看这个:stackoverflow.com/questions/7664249/…,通读我的答案和 cmets。看看你是否可以从你的生产服务器授权进入交换。
  • 您可能会检查您是否正在使用 SSL 进行呼叫。如果没记错的话,如果请求没有安全地发出,Exchange 会给出 401 错误。您的 Bluehost 帐户可能未设置为执行此操作。

标签: php codeigniter exchangewebservices


【解决方案1】:

尝试使用 wfetch/fiddler 或类似工具重新创建请求并提交,以便您检查来自 EWS 的响应。

根据您用来提交请求的库,尝试开启更高粒度的日志记录。

是否所有服务器都配置了相同的 cacert 信任库以允许 EWS 请求?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多