我使用的是ubuntu麒麟版,安装配置完lnmp环境后,使用composer安装laravel4.2,居然报502错误,查看nginx的log和fpm的log发现如下错误:
nginx的.log:
2014/06/01 22:23:46 [error] 7572#0: *1 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 127.0.0.1, server: www.tb.com, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "www.tb.com"
php5-fpm的log:
[02-Jun-2014 21:59:38] WARNING: [pool www] child 12547 exited on signal 11 (SIGSEGV - core dumped) after 13121.206611 seconds from start
[02-Jun-2014 21:59:38] NOTICE: [pool www] child 13820 started
nginx的配置文件如下:
server {
listen 80;
#listen [::]:80 default_server ipv6only=on;
root /www/taobao/public;
index index.html index.htm index.php;
server_name www.tb.com;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
try_files $uri $uri/ =404;
# fastcgi_split_path_info ^(.+\.php)(/.+)$;
# # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
#
# # With php5-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/project/public$fastcgi_script_name;
include fastcgi_params;
}
}
还有一点,执行单个php文件是没有问题的,phpinfo里也可以看到该添加的扩展都已经安装了
不要用一键安装包。
php安装5.4以上版本
fastcgi使用ip:port。不要使用unix:sock
script_name 使用$document_root配置,例如: