服务器响应500错误和错误代码204断断续续,而开发服务器工作完美


Sever responding with a 500 error and error code 204 off and on, while development server works perfectly

我已经搜索并搜索了在谷歌应用程序引擎(PHP)上找到这个奇怪问题的答案。我的应用程序产生了下面的错误,但只说5或6次调用中有一次。在开发服务器上绝对没有错误。我已经禁用了APC缓存,并尝试了更改版本号之类的事情。

日志显示如下:

2014-05-14 11:53:30.270 /mapi/index.php?action=login&params%5Blogin%5D=kumar76&params%5Bpassword%5D=kumar123&_=Submit 500 121ms 0kb Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/537.75.14 module=default version=1-0-test
24.55.15.118 - - [14/May/2014:09:53:30 -0700] "GET /mapi/index.php?action=login&params%5Blogin%5D=kumar76&params%5Bpassword%5D=kumar123&_=Submit HTTP/1.1" 500 0 - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/537.75.14" "simplycrowmapi.appspot.com" ms=121 cpu_ms=0 exit_code=204 app_engine_release=1.9.4 instance=00c61b117c1279e8c136be007edf2c17b5bfd1
W 2014-05-14 11:53:30.270 
A problem was encountered with the process that handled this request, causing it to exit.
This is likely to cause a new process to be used for the next request to your application.   
(Error code 204)

我的php . ini中:

google_app_engine.enable_functions = "php_sapi_name, gc_enabled, phpinfo"
allow_url_include = "1"
upload_max_filesize = 8M
apc.cache_by_default = "0"
apc.enabled = "0"

我在应用引擎上使用CodeIgniter v2.1和v3也得到了这个错误,并且也得到了这个错误。

当使用$autoload['libraries'] = array('database');

时发生

然后在随机刷新几次页面后弹出此错误。

database.php中修改以下内容后:

'pconnect' => TRUE,

'pconnect' => FALSE,

这个错误在我的应用程序中消失了。现在版本2.1和3都为我工作了。

可能在你使用的框架或代码中有类似的设置

我遇到了完全相同的问题,也是通过使用非持久连接解决的。根据App Engine的Cloud SQL文档https://developers.google.com/appengine/docs/php/cloud-sql/#PHP_Managing_connections,它只能服务12个并发连接,这可能比前端PHP进程的数量要少。

对于PDO,是

PDO::ATTR_PERSISTENT => false