2013-09-22 19 views
6

Amazon Linux mới nhấtNginx + php-fpm trên Amazon Linux = thoát trên tín hiệu 11

PHP 5.4.19 (cli) (được xây dựng: Sep 3 2013 23:19:23)

phiên bản nginx: nginx/1.2.9

cài đặt PHP-FPM: PHP 5.4.19 (fpm-fcgi) (được xây dựng: Sep 3 2013 23:22:01)

phpinfo() đang làm việc

pma.nginx.conf:

server { 
listen 80; 
server_name pma.my.server; 

root /usr/share/phpmyadmin; 
index index.php; 
charset UTF-8; 

access_log /var/log/myserver/pma.access.log; 
error_log /var/log/myserver/pma.error.log; 

location ~ \.php$ { 
    include fastcgi_params; 
    fastcgi_pass php-fpm; 
    fastcgi_index index.php; 
    fastcgi_param SCRIPT_FILENAME /usr/share/phpmyadmin/$fastcgi_script_name; 
    fastcgi_param DOCUMENT_ROOT /usr/share/phpmyadmin/; 
    fastcgi_intercept_errors on; 
} 

}

/var/log/myserver/pma.error.log:

[error] 21374#0: *13 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 1.0.255.202, server: pma.my.server, request: "GET /js/get_image.js.php?theme=pmahomme HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fpm/php-fpm.sock:", host: "pma.my.server", referrer: "http://pma.my.server/" 

/var/log/php-fpm/error.log

NOTICE: fpm is running, pid 21598 
NOTICE: ready to handle connections 
WARNING: [pool www] child 21600 exited on signal 11 (SIGSEGV) after 12.862493 seconds from start 
NOTICE: [pool www] child 21614 started 
WARNING: [pool www] child 21602 exited on signal 11 (SIGSEGV) after 13.768522 seconds from start 
NOTICE: [pool www] child 21617 started 

/var/log/messages

kernel: [12499.658777] php-fpm[21603]: segfault at 0 ip 00000000005c5a39 sp 00007fffb44d6d60 error 4 in php-fpm[400000+31c000] 

Tôi không có kinh nghiệm lớn với Nginx và FastCGI, vì vậy tôi cần sự giúp đỡ của bạn. Bạn có bất cứ ý tưởng? Cảm ơn trước

Trả lời

8

dường như PHP đang cố gắng để ghi dữ liệu vào đĩa phiên trong một thư mục đó không phải là thực sự có thể ghi, cụ thể là /var/lib/php/session.

Thanks to Michael Hampton

+0

Chúc mừng, tôi đã phải thay đổi quyền từ gốc: apache thành root: nginx. Gần đây tôi đã cập nhật các gói đã cài đặt, tôi nghĩ rằng nó đã lấy lại quyền này khi nó cập nhật httpd. –

+0

@BradMoore Rất vui khi được giúp bạn) – indapublic

0

Mã trong tệp này /js/get_image.js.php gây ra lỗi phân đoạn.

Bạn có thể sử dụng kết xuất lõi để xem backtrace.

Nginx Core dump

1

Vấn đề là php không thể viết phiên nộp nhưng nó không nhất thiết phải nằm trong /var/lib/php/session Bạn có thể kiểm tra và thay đổi nó bằng cách sử dụng session_save_path

1

Có vẻ có rất nhiều điều mà có thể gây ra điều này, nhưng nếu bạn đang chạy một trang web Magento cũng kiểm tra xem liệu bất kỳ quy tắc giỏ hàng nào đã được thay đổi gần đây và thấy điều này relevant post. Đó là giải pháp cho tôi.

Các vấn đề liên quan