lỗi nginx kết nối với php5-fpm.sock không thành công (13: Quyền bị từ chối)


290

Tôi cập nhật nginx lên 1.4.7 và php lên 5.5.12 , sau đó tôi gặp lỗi 502 . Trước khi tôi cập nhật mọi thứ hoạt động tốt.

nginx-error.log

2014/05/03 13:27:41 [crit] 4202#0: *1 connect() to unix:/var/run/php5-fpm.sock failed (13: Permission denied) while connecting to upstream, client: xx.xxx.xx.xx, server: localhost, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "xx.xx.xx.xx"

nginx.conf

user  www www;
worker_processes  1;

        location / {
            root   /usr/home/user/public_html;
            index  index.php index.html index.htm;
        }
        location ~ [^/]\.php(/|$) {
            fastcgi_split_path_info ^(.+?\.php)(/.*)$;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_index index.php;
            fastcgi_param  SCRIPT_FILENAME    /usr/home/user/public_html$fastcgi_script_name;
            include fastcgi_params;
        }

3
Báo cáo lỗi này giải thích lý do tại sao điều này xảy ra: bug.php.net/orms.php?id=67060
Matt Cooper

1
Mọi người đến đây từ bản nâng cấp Ubuntu 14 đến 16, bạn cần thay đổi sock thành unix: /var/run/php/php7.0-fpm.sock
Karussell

Câu trả lời:


626

Tôi đã có một lỗi tương tự sau khi cập nhật php. PHP cố định một lỗi bảo mật trong đó orwsự cho phép để các tập tin ổ cắm.

  1. Mở /etc/php5/fpm/pool.d/www.confhoặc /etc/php/7.0/fpm/pool.d/www.conf, tùy thuộc vào phiên bản của bạn.
  2. Bỏ ghi chú tất cả các dòng cho phép, như:

    listen.owner = www-data
    listen.group = www-data
    listen.mode = 0660
  3. Khởi động lại fpm - sudo service php5-fpm restarthoặcsudo service php7.0-fpm restart

Lưu ý : nếu máy chủ web của bạn chạy dưới dạng người dùng khác với dữ liệu www, bạn sẽ cần cập nhật www.conftệp cho phù hợp


11
Cho rằng điều này làm cho ổ cắm có thể ghi được cho tất cả mọi người, tôi không thể không nghĩ rằng đây là một giải pháp khủng khiếp.
Shadur

11
Cách tiếp cận này khôi phục cấu hình mặc định không an toàn được giải quyết trong bug.php.net/orms.php?id=67060 - thay vào đó hãy xem xét sửa lỗi list.owner được đề xuất bởi artooro.
Chris Burgess

2
Rất bối rối. Tại sao không chỉnh sửa câu trả lời của bạn thành chính xác, (Chuyển đến / etc ...) và sau đó nhận xét về cách có một cách kém an toàn hơn chỉ hoạt động cho đến khi khởi động lại (Chuyển đến / var / ..).
Samoody

1
@Tecnocat Tại sao nó kém an toàn? Tôi nghĩ rằng họ là như nhau. www-data và 660. Vì vậy, tôi không hiểu điều gì sai?
Xander

13
sudo usermod -aG www-data nginxcho phép nginx truy cập tệp
AnthumChris

107

Tất cả các bản sửa lỗi hiện được đề cập ở đây về cơ bản cho phép lỗ hổng bảo mật trở lại.

Điều cuối cùng tôi làm là thêm các dòng sau vào tệp cấu hình PHP-FPM của tôi.

listen.owner = www-data
listen.group = www-data

Đảm bảo rằng dữ liệu www thực sự là người dùng mà nhân viên nginx đang chạy. Đối với debian, dữ liệu www theo mặc định.

Làm theo cách này không cho phép vấn đề bảo mật mà thay đổi này được cho là sẽ khắc phục .


16
Để kiểm tra tên người dùng nginxps aux|grep nginx
Samoody

2
Trên Ubuntu tại /etc/php5/fpm/php.ini
thực tế

1
@RealityExtractor Tôi không nghĩ vậy. Tệp đó chỉ chứa các cài đặt PHP chung, không có gì liên quan đến trình quản lý quy trình FPM.
Martijn Heemels

4
Đối với tôi, tôi cũng phải xóa thủ công /var/run/php5-fpm.sock, vì nó đã được tạo bởi www-data. Chỉ cần một người đứng đầu ...
Giel Berkers

1
Đây là cách khắc phục thích hợp, bảo mật.
jschorr

45

Giải pháp của @ Xander hoạt động, nhưng không tồn tại sau khi khởi động lại.

Tôi thấy rằng tôi phải thay đổi listen.mode để 0660trong /etc/php5/fpm/pool.d/www.conf.

Mẫu từ www.conf:

; Set permissions for unix socket, if one is used. In Linux, read/write
; permissions must be set in order to allow connections from a web server. Many
; BSD-derived systems allow connections regardless of permissions. 
; Default Values: user and group are set as the running user
;                 mode is set to 0660
;listen.owner = www-data
;listen.group = www-data
;listen.mode = 0660

Chỉnh sửa: Per @Chris Burgess, tôi đã thay đổi phương thức này thành phương pháp an toàn hơn.

Tôi đã xóa nhận xét cho list.mode, .group và .owner:

listen.owner = www-data
listen.group = www-data
listen.mode = 0660

/ var / run Chỉ lưu giữ thông tin về hệ thống đang chạy kể từ lần khởi động trước, ví dụ: người dùng hiện đang đăng nhập và trình nền đang chạy. ( http://en.wikipedia.org/wiki/Filesystem_HVELy_Stiteria#Directory_itectture ).

Lưu ý bên:

php5-fpm -vBáo cáo của tôi : PHP 5.4.28-1+deb.sury.org~precise+1. Vấn đề đã xảy ra sau một bản cập nhật gần đây là tốt.


5
Cách tiếp cận này khôi phục cấu hình mặc định không an toàn được giải quyết trong bug.php.net/orms.php?id=67060 - thay vào đó hãy xem xét sửa lỗi list.owner được đề xuất bởi artooro.
Chris Burgess

Nếu listen.acl_groupsđược đặt, listen.ownerlisten.groupđược bỏ qua. Tôi đặt listen.acl_groups =, sau đó vấn đề 502 / quyền biến mất. Tìm thấy nó sau khi bỏ qua các listen.dòng như trên, vấn đề 502 vẫn tồn tại và systemctl status php-fpmcho thấy cảnh báo WARNING: [pool www] ACL set, listen.owner = 'nobody' is ignored.
tưởng tượng

37

Nếu bạn đã thử mọi thứ trong bài viết này nhưng không thành công khi PHP hoạt động, đây là điều đã khắc phục nó cho trường hợp của tôi:

Hãy chắc chắn rằng bạn có những dòng này không bị thiếu trong /etc/php5/fpm/pool.d/www.conf:

listen.owner = www-data
listen.group = www-data
listen.mode = 0660

Đảm bảo / etc / nginx / fastcgi_params trông như thế này:

fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  PATH_INFO          $fastcgi_script_name;
fastcgi_param  HTTPS              $https if_not_empty;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;

Hai dòng này bị thiếu trong / etc / nginx / fastcgi_params của tôi, hãy chắc chắn rằng chúng ở đó!

fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  PATH_INFO          $fastcgi_script_name;

Sau đó, khởi động lại php5-fpm và nginx. Nên làm thủ thuật.


2
Cảm ơn bạn rất nhiều! Tôi đã mất hết hy vọng, điều này đã cứu cái mông của tôi.
Diego Castro

1
Bạn là người hùng của tôi, bạn đã cứu ngày!
jeppeb

1
Không có từ nào có thể mô tả tôi biết ơn như thế nào! Sau khi cập nhật các gói, mọi thứ trở nên ổn định và điều này đã tiết kiệm trong ngày.
Nikola Prokopić 14/03/2016

Tôi muốn cung cấp cho bạn nhiều hơn một
g9m29

28

Trên thực tế, "list.mode" phải là: "0660" chứ không phải "0666" như các loại có thể ghi khác hoặc có thể đọc khác không bao giờ là một lựa chọn tốt ở đây.

Vì vậy, hãy cố gắng tìm ra người dùng / nhóm máy chủ web của bạn chạy. Tôi sử dụng CentO và nó chạy như người dùng "nginx" Vì vậy, hãy thêm vào php-fpm.conf của bạn:

listen.owner = nginx
listen.group = nginx
listen.mode = 0660

cuối cùng khởi động lại php-fpm


Đối với những gì nó có giá trị, trên hệ thống Ubuntu 12.04 của tôi, người dùng và nhóm www-data.
Brad

1
Đối với tôi trong CentOS, nó hoạt động để đặt người dùng thành "không ai" và nhóm là "nginx". Có lẽ không phải là một cải tiến lớn, nhưng tôi muốn cung cấp càng ít quyền càng tốt.
Kzqai

23

Kiểm tra xem người dùng nào chạy nginx. Kể từ Ubuntu 12.04 nginx được điều hành bởi người dùng nginx không phải là thành viên của nhóm dữ liệu www.

usermod -a -G www-data nginx

và khởi động lại nginx và php5-fpm daemon giải quyết vấn đề.


Khắc phục sự cố này có vẻ là sạch nhất, bảo mật khôn ngoan. Đã hoạt động trên Ubuntu 14.04, Nginx 1.7.10, PHP 5.5.9-1ubfox4.6 (fpm-fcgi)
AnthumChris

12

Thay thế cho việc mở rộng quyền trong cấu hình php của bạn, bạn có thể thay đổi người dùng được chỉ định trong cấu hình nginx của mình.

Trên dòng đầu tiên của đoạn trích nginx.conf của bạn ở trên, người dùng và nhóm được chỉ định lần lượt là www và www.

user  www www;

Trong khi đó, cấu hình php của bạn có thể chỉ định người dùng và nhóm dữ liệu www:

listen.owner = www-data
listen.group = www-data

Bạn có thể thay đổi dòng trong nginx.conf của bạn, thành bất kỳ điều nào sau đây, sau đó:

user www-data www;
user www-data www-data; # or any group, really, since you have the user matching
user www www-data; # requires that your php listen.mode gives rw access to the group

Cảm ơn rât nhiều!
Aline Matos

Cảm ơn rât nhiều! Thay đổi nginx.conf là cần thiết.
LCB

7

Cân nhắc cũng phải được đưa ra cho các nhóm FPM cá nhân của bạn, nếu có.

Tôi không thể hiểu tại sao không có câu trả lời nào trong số này làm việc cho tôi ngày hôm nay. Đây là một kịch bản dễ quên đối với tôi, ở đó tôi đã quên rằng list.user và list.group được sao chép trên cơ sở mỗi nhóm.

Nếu bạn đã sử dụng nhóm cho các tài khoản người dùng khác nhau như tôi đã làm, trong đó mỗi tài khoản người dùng sở hữu các quy trình và ổ cắm FPM của họ, chỉ đặt các tùy chọn cấu hình nghe.owner và list.group mặc định thành 'nginx' sẽ không hoạt động. Và rõ ràng, việc để 'nginx' sở hữu tất cả chúng cũng không được chấp nhận.

Đối với mỗi hồ bơi , hãy chắc chắn rằng

listen.group = nginx

Nếu không, bạn có thể để quyền sở hữu của hồ bơi và như vậy một mình.


Cảm ơn bạn. Nếu Ngnix hoạt động cho các tài khoản người dùng khác nhau, thì nên thay đổi như thế này "list.group = nginx"
MURATSPLAT

6

Tôi vừa gặp lỗi này một lần nữa khi tôi cập nhật máy của mình (có bản cập nhật cho PHP) chạy Ubuntu 14.04 . Tệp cấu hình phân phối /etc/php5/fpm/pool.d/www.confvẫn ổn và hiện tại không yêu cầu bất kỳ thay đổi nào.

Tôi tìm thấy các lỗi sau:

dmesg | grep php
[...]
[ 4996.801789] traps: php5-fpm[23231] general protection ip:6c60d1 sp:7fff3f8c68f0 error:0 in php5-fpm[400000+800000]
[ 6788.335355] traps: php5-fpm[9069] general protection ip:6c5d81 sp:7fff98dd9a00 error:0 in php5-fpm[400000+7ff000]

Điều kỳ lạ là tôi có 2 trang web đang chạy sử dụng PHP-FPM trên máy này, một trang đang chạy tốt và trang kia (cài đặt Tiny Tiny RSS) đã cho tôi một 502, trong đó cả hai đều chạy tốt trước đó .

Tôi đã so sánh cả hai tập tin cấu hình và thấy rằng nó fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;bị thiếu cho trang web bị ảnh hưởng.

Cả hai tệp cấu hình hiện chứa khối sau và đang chạy tốt trở lại:

location ~ \.php$ {
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        include /etc/nginx/snippets/fastcgi-php.conf;
}

Cập nhật

Cần lưu ý rằng Ubuntu gửi hai tệp tham số liên quan đến fastcgi và cũng là đoạn mã cấu hình có sẵn từ Vivid và cả trong PPA phiên bản . Các giải pháp đã được cập nhật cho phù hợp.

Diff của các tệp tham số fastcgi:

$ diff -up fastcgi_params fastcgi.conf
--- fastcgi_params      2015-07-22 01:42:39.000000000 +0200
+++ fastcgi.conf        2015-07-22 01:42:39.000000000 +0200
@@ -1,4 +1,5 @@

+fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
 fastcgi_param  QUERY_STRING       $query_string;
 fastcgi_param  REQUEST_METHOD     $request_method;
 fastcgi_param  CONTENT_TYPE       $content_type;

Đoạn cấu hình trong /etc/nginx/snippets/fastcgi-php.conf

# regex to split $uri to $fastcgi_script_name and $fastcgi_path
fastcgi_split_path_info ^(.+\.php)(/.+)$;

# Check that the PHP script exists before passing it
try_files $fastcgi_script_name =404;

# Bypass the fact that try_files resets $fastcgi_path_info
# see: http://trac.nginx.org/nginx/ticket/321
set $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO $path_info;

fastcgi_index index.php;
include fastcgi.conf;

3
Cảm ơn rất nhiều. Tôi có cùng một vấn đề. Thật kỳ lạ khi trong gói không bao gồm dòng này. Tôi chỉ cần thêm nó vào / etc / nginx / fastcgi_params và tất cả đều hoạt động trở lại.
Bukashk0zzz

5

Cách khắc phục đơn giản sau đây có hiệu quả với tôi, bỏ qua các vấn đề về quyền có thể xảy ra với ổ cắm.

Trong cấu hình nginx của bạn, đặt fastcgi_pass thành:

fastcgi_pass   127.0.0.1:9000;

Thay vì

fastcgi_pass   /var/run/php5-fpm.sock;

Điều này phải khớp với tham số nghe = trong /etc/php5/fpm/pool.d/www.conf, do đó, cũng đặt giá trị này thành:

listen = 127.0.0.1:9000;

Sau đó khởi động lại php5-fpm và nginx

service php5-fpm restart

service nginx restart

Để biết thêm thông tin, hãy xem: https://wildlyinaccurur.com/solve-502-bad-gateway-with-nginx-php-fpm/


Mặc dù điều này có thể khiến bạn gặp khó khăn, nhưng đây không phải là giải pháp để khắc phục vấn đề sock.
Chris

5

Vấn đề trong trường hợp của tôi là máy chủ web Nginx đang chạy như người dùng nginx và nhóm đang chạy dưới dạng dữ liệu www của người dùng.

Tôi đã giải quyết vấn đề bằng cách thay đổi người dùng Nginx đang chạy trong /etc/nginx/nginx.conftệp (có thể khác trên hệ thống của bạn, của tôi là Ubuntu 16.04.1)

Thay đổi: user nginx;

đến: user www-data;

sau đó khởi động lại Nginx: service nginx restart


4

Đơn giản nhưng hoạt động ..

listen.owner = nginx
listen.group = nginx

chown nginx:nginx /var/run/php-fpm/php-fpm.sock

Theo tôi hiểu, điều này sẽ không tồn tại khi khởi động lại, vì vậy đây chỉ là một sửa chữa tạm thời.
Chris

4

Tôi đã khắc phục sự cố tương tự trên Amazon Linux AMI 2016.09 (Centos 7) bằng cách thực hiện các bước sau.

Mở các tệp www.conf của bạn (Ví dụ: sudo nano /etc/php-fpm.d/www.conf) Cuối cùng, tìm các dòng đặt list.owner và lắng.group và thay đổi giá trị của chúng từ "none" thành "nginx ":

listen.owner = nginx
listen.group = nginx
listen.mode = 0666

Cuối cùng, tìm các dòng đặt người dùng và nhóm và thay đổi giá trị của chúng từ "apache" thành "nginx":

user = nginx
group = nginx

Khởi động lại php-fpm (khởi động lại dịch vụ php-fpm)


2
Sử dụng 660 thay vì 666. 666 không an toàn và đã được sửa bởi bản vá lỗi này.php.net / Bọ
Xander

3

Điều quan trọng nhất ở đây là người dùng đang sử dụng nginx thì bạn có cần chỉ định nó không

trong nginx.conf của bạn

user www-data;
worker_processes  1;

        location / {
            root   /usr/home/user/public_html;
            index  index.php index.html index.htm;
        }
        location ~ [^/]\.php(/|$) {
            fastcgi_split_path_info ^(.+?\.php)(/.*)$;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_index index.php;
            fastcgi_param  SCRIPT_FILENAME    /usr/home/user/public_html$fastcgi_script_name;
            include fastcgi_params;
        }

trong www.conf của bạn

listen.owner = www-data
listen.group = www-data
;listen.mode = 0660

trong trường hợp của bạn, người dùng và nhóm là "www", vì vậy chỉ cần thay thế nó.

  • khởi động lại nginx và php fpm

2

Nếu bạn có nhóm khác nhau cho mỗi người dùng, hãy đảm bảo người dùng và nhóm được đặt chính xác trong tệp cấu hình. Bạn có thể tìm thấy người dùng nginx trong tệp /etc/nginx/nginx.conf. nhóm nginx giống như người dùng nginx.

user = [pool-user]
group = [pool-group]
listen.owner = [nginx-user]
listen.group = [nginx-group]

2

Đồng thời kiểm tra SELINUX (/ etc / selinux):

# getenforce

tắt nó đi:

# setenforce 0

1
Bạn không bao giờ nên chọn giảm bảo mật của hệ thống để làm cho một cái gì đó hoạt động, thay vào đó sử dụng một trong nhiều tùy chọn trong các câu trả lời khác để giải quyết vấn đề của bạn. Đừng vô hiệu hóa selinux mà không có lý do cực kỳ tốt để làm như vậy!
SlyDave

2

Trong trường hợp của tôi, php-fpm hoàn toàn không chạy, vì vậy tôi chỉ phải bắt đầu dịch vụ

service php7.3-fpm start
#on ubuntu 18.04

2

Chỉ cần xem /etc/php5/php-fpm.conf pid = /var/run/php5-fpm.pidtệp IS PID

Trong tập tin /etc/php5/fpm/pool.d/www.conf

listen = /var/run/php5-fpm.sock Tệp SOCKET

nếu bạn bỏ qua lắng nghe bằng nhau ( pid = /var/run/php5-fpm.sock and listen = /var/run/php5-fpm.sock) -> cài đặt sai và hoàn tất giải quyết/etc/php5/fpm/pool.d/www.conf

user = nginx
group = nginx
listen.owner = nginx
listen.group = nginx
listen.mode = 0660

1

Chỉ cần thêm, trên CentOS (và có lẽ là Red Hat và Fedora), tệp để thay đổi quyền là:

/etc/php-fpm.d/www.conf


1

Sau khi nâng cấp từ Ubuntu 14.04 lên lên Ubuntu 16.04, tôi đã tìm thấy một lý do khác cho lỗi này mà tôi chưa từng thấy trước đây.

Trong quá trình nâng cấp, bằng cách nào đó tôi đã mất hoàn toàn khả năng thực thi php5-fpm của mình. Tất cả các tệp cấu hình đều còn nguyên vẹn và tôi phải mất một thời gian để nhận ra rằng service php5-fpm startnó không thực sự bắt đầu một quá trình, vì nó không hiển thị bất kỳ lỗi nào.

Khoảnh khắc thức tỉnh của tôi là khi tôi nhận thấy rằng không có tệp ổ cắm nào /var/run/php5-fpm.sock, vì vậy, cũng không có, netstat -anhiển thị các quá trình lắng nghe trên cổng mà tôi đã cố gắng thay thế trong khi cố gắng giải quyết vấn đề này. Vì tệp / usr / sbin / php5-fpm cũng không tồn tại, cuối cùng tôi đã đi đúng hướng.

Để giải quyết vấn đề này, tôi đã nâng cấp php từ phiên bản 5.5 lên 7.0. apt-get install php-fpmđã làm các thủ thuật như là một tác dụng phụ. Sau đó và cài đặt các gói cần thiết khác, mọi thứ đã trở lại bình thường.


Giải pháp nâng cấp này có thể có vấn đề của riêng mình , tuy nhiên. Vì php đã phát triển khá nhiều, nên có thể phần mềm sẽ bị hỏng theo những cách không thể tưởng tượng được. Vì vậy, mặc dù tôi đã đi theo con đường đó, bạn có thể muốn giữ phiên bản mà bạn thích chỉ trong một thời gian dài.

May mắn thay, dường như có một cách gọn gàng cho điều đó , như được mô tả trên trang web Tùy chỉnh Windows:

add-apt-repository ppa:ondrej/php
apt-get purge php5-common
apt-get update
apt-get install php5.6

Giải pháp gọn gàng hơn có thể, tôi đã không thử điều đó. Tôi hy vọng vài ngày tới sẽ cho tôi biết tôi có nên có không.


1

Tôi đã có lỗi tương tự.

Tất cả các khuyến nghị đã không giúp đỡ.

Dữ liệu www thay thế duy nhất bằng nginx đã giúp:

$ sudo chmod nginx:nginx /var/run/php/php7.2-fpm.sock

/var/www/php/fpm/pool.d/www.conf

user = nginx
group = nginx
...
listen.owner = nginx
listen.group = nginx
listen.mode = 0660

Xin chào @Alexander, Bạn cần sử dụng lệnh chown để thay đổi chủ sở hữu thành nginx. Điều này thực sự đã giúp tôi rất nhiều.
Pratik Ghela

0

Tôi đã thay đổi hệ điều hành trên máy chủ của mình khá nhiều lần để có được hệ thống thoải mái nhất.

Nó đã từng hoạt động rất tốt trong hầu hết thời gian nhưng cuối cùng tôi đã gặp phải lỗi 502 Gateway này.

Tôi sử dụng ổ cắm php fpm cho mỗi tài khoản thay vì giữ cùng một tài khoản cho tất cả. Vì vậy, nếu một sự cố, ít nhất các ứng dụng khác tiếp tục chạy.

Tôi đã từng có dữ liệu www của người dùng và nhóm. Nhưng điều này đã thay đổi trên Debian 8 của tôi với Nginx 1.8 và php5-fpm mới nhất.

Người dùng mặc định là nginx và nhóm cũng vậy. Để chắc chắn về điều này, cách tốt nhất là kiểm tra các tập tin / etc / group và / etc / passwd. Những điều này không thể nói dối.

Ở đó tôi thấy rằng bây giờ tôi có nginx trong cả hai và không còn dữ liệu www.

Có lẽ điều này có thể giúp một số người vẫn cố gắng tìm hiểu tại sao thông báo lỗi liên tục xuất hiện.

Nó làm việc cho tôi.


0

Đối với những người đã thử mọi thứ trong chủ đề này và vẫn bị mắc kẹt: Điều này đã giải quyết vấn đề của tôi. Tôi đã cập nhật /usr/local/nginx/conf/nginx.conf

  1. Bỏ ghi chú user

  2. làm cho www-datanó trở thành:user www-data;

  3. Lưu nó (yêu cầu quyền truy cập root)

  4. Khởi động lại nginx


0

Nếu bạn có tờ khai

pid = /run/php-fpm.pid

nghe = /run/php-fpm.pid

trong các tệp cấu hình khác nhau, thì root sẽ sở hữu tệp này.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.