我有旧的应用程序(PHP 5.3,Apache 2.2),我必须迁移到PHP7.0-FPM
和Apache 2.4
(使用Docker)。
所有应用程序似乎都有效。此应用程序使用Prototype 1.6.0.3
,当调用Ajax.Request
时,会显示503 error
(在this.transport.send(this.body);
行之后)。
我真的不明白......
这是PHP-FPM日志:
[29-Dec-2017 09:34:24]警告:[pool www] child 848退出信号 11(SIGSEGV)开始后372.307974秒[2017年12月29日 09:34:24]注意:[池www]孩子858开始了
这是Apache日志:
[Fri Dec 29 09:34:24.865850 2017] [proxy_fcgi:error] [pid 429:tid 139741154125568] [客户端192.168.99.1:64899] AH01067:无法读取 FastCGI标题,引用者: http://test.doc/test/rubriques.php?logindata=4672d5ddafae848456b93bcb02da4df1 [Fri Dec 29 09:34:24.867796 2017] [proxy_fcgi:error] [pid 429:tid 139741154125568](104)通过对等方重置连接:[客户端 192.168.99.1:64899] AH01075:错误地将请求分派给:,引用者:http://test.doc/test/rubriques.php?logindata=4672d5ddafae848456b93bcb02da4df1
编辑:我与生产服务器具有相同的rewrite rules
。
在调用Ajax.Request
的JS文件中,请求的网址为/appli/myappli/ctrl/mymodule/IndexCtrl.php
,但在文件系统上,文件为IndexCtrl.class.php
,而不是IndexCtrl.php
。
我记得我将ProxyPassMatch
设置为这样:ProxyPassMatch "^/(.*\.php(/.*)?)$" "unix:/run/php/php7.0-fpm.sock|fcgi://localhost/var/www/html/intranet"
我认为我的配置有误,但我不知道在哪里。
编辑:我认为session_start会导致此错误。有什么想法吗?
答案 0 :(得分:0)
没关系!问题是由于未设置会话变量和隐藏错误的@前缀...这非常难看!由于session_error_handler