在手动安装 PHP 5.6.34(线程安全包)的 IIS 7.5 上使用 guzzle 时出现问题

Issue with using guzzle on IIS 7.5 with manually installed PHP 5.6.34 (Thread-safe package)

所以我有多个项目使用 Guzzle 来处理服务器端请求,并且它在我正在使用的几个库中使用(例如 Google Adwords PHP library)。

而且我在 Mac 上使用 Guzzle 没有问题,但由于某些原因在 windows 上它失败了。据我了解,通常是 PHP 应用程序失败(错误事件消息如下)。我认为这是一个配置错误,但我被困在 SSL certificates and extensions configuration.

之间

也许有人 运行 解决了 IIS 7.5 上的问题并修复了它。感谢任何帮助。

Faulting application name: php-cgi.exe, version: 5.6.34.0, time stamp: 0x5a975d26
Faulting module name: php5ts.dll, version: 5.6.34.0, time stamp: 0x5a9762c2
Exception code: 0xc0000005
Fault offset: 0x00000000004105ef
Faulting process id: 0x1900
Faulting application start time: 0x01d3b4cec2c744e1
Faulting application path: E:\_PHP_56_64bit\php-cgi.exe
Faulting module path: E:\_PHP_56_64bit\php5ts.dll
Report Id: 125c6a11-20c2-11e8-8e90-005056c00008

(从评论中复制。)

你的问题描述中有几个危险信号,

  • PHP 5.6。这是一个非常老的版本(今年很快就会过时)。
  • 使用了线程安全包。 PHP官方和微软推荐非线程安全包

因此,通过升级到更新的 PHP 版本 (7.x) 的非线程安全包,您可能会解决问题。