繁体   English   中英

PHP警告导致脚本在运行FastCGI的IIS上暂停

[英]PHP warnings cause script to halt on IIS running FastCGI

我们正在迁移到运行Windows 2003和IIS 6的新服务器。当我的PHP代码运行时,它会在特定行上发出警告(我现在期待但很快就会修复)。 但是,当它遇到警告时,会立即停止处理并在HTTP标头中返回500错误。 通常,我希望PHP输出警告,但继续处理脚本。

在遇到警告时,IIS,FastCGI或PHP的配置中是否会出现500个错误?

澄清:我不想压制警告; 我希望他们展示。 我不希望脚本停止处理警告。

找出问题所在。 php.ini中的log_errors设置为On ,但未设置error_log 这导致PHP停止一切。 display_errors设置为on ,现在会显示警告,以便我可以看到输出中的内容在哪里断开。

这个帖子很有帮助: http//forums.iis.net/p/1146102/1856222.aspx#1856222

我不知道IIS或FastCGI,但是afaik php没有这样的选择。 但是,您可以将error_reporting (在您的php.ini )设置为

E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR

警告消失了。

这在很大程度上取决于你的PHP代码,如果你在代码中做了一些复杂的事情并且发生错误,web服务器有时会抛出500个错误。 我建议你:

  1. 在行上放一个@来抑制错误,即:

    $ X = @创建my_function($ y)基

  2. 查看您的Web服务器日志以获取确切的错误消息,然后将其发布到此处,也许我们可以为您提供更好的解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM