NGINX가 구성된 사용자로 실행되고 있지 않습니다.

NGINX가 구성된 사용자로 실행되고 있지 않습니다.

이것은 NGINX와 관련된 권한 문제에 더 가깝다고 생각하기 때문에 Joomla 문제 자체는 아닙니다. Joomla를 설정하는 동안 이 문제가 발생했습니다. 아래 내용을 읽어 보시기 바랍니다. 그러나 테스트 결과 이는 NGINX 문제에 더 가깝다고 생각됩니다.

NGINX를 실행하는 전용 호스트가 있고 디렉터리 권한을 755로 설정하고 기존 파일 권한을 744로 설정했습니다. 미디어 라이브러리에 파일을 업로드하거나 관리자 패널을 통해 폴더를 만들 수 없습니다.

특정 네트워크 루트 디렉터리에 대한 권한

-rw-r--r--.  1 nginx nginx  1892 Dec 29 11:21 configuration.php
-rw-r--r--.  1 nginx nginx  2915 Dec 24 10:51 htaccess.txt
drwxr-xr-x.  5 nginx nginx  4096 Dec 30 11:33 images
drwxr-xr-x.  2 nginx nginx    61 Dec 24 10:51 includes

보시다시피 nginx는 폴더 이미지의 소유자입니다. 내 /etc/nginx/nginx.conf파일에는 다음 줄이 있습니다.

user nginx;

따라서 Joomla는 디렉토리 이미지에 대한 쓰기 권한이 있는 사용자로 실행되어야 합니다. 분명히 뭔가를 놓치고 있는 것 같은데...


테스트를 위해 권한을 777로 변경하여 디렉토리를 생성할 수 있었습니다. 제가 놀랐던 점은......

drwxr-xr-x. 2 apache apache   23 Dec 30 11:46 asdf
drwxr-xr-x. 2 nginx  nginx  4096 Dec 24 10:51 banners
drwxr-xr-x. 2 nginx  nginx   104 Dec 24 10:51 headers

NGINX를 설치한 후 Apache 사용자가 나타나는 이유는 무엇입니까? 나는 사이트를 호스팅하는 친구에게 Apache가 설치되어 있는지 물었고 그는 아니오라고 말했습니다. 어쨌든 나는 이것을 실행했지만 아무것도 얻지 못했습니다

sudo yum list installed | grep apache

답변1

작은 고무 오리 디버깅이 이 문제를 해결하는 데 도움이 된 것 같습니다. 나는 확인했다

ps aux | grep apache

그리고 php-fpm 풀이 실제로 아파치로 실행되도록 구성되어 있다는 것을 알게 되었습니다. 빠른 조사로 인해 다시 여기로 돌아왔습니다.www-data 대신 php-fpm 사용자를 php-user로 설정하는 방법은 무엇입니까?. 이 정보를 사용하여 /etc/php-fpm.d/에 있는 www.conf 파일을 편집할 수 있습니다.

user = nginx
group = nginx

php-fpm 서비스를 빠르게 변경하고 다시 시작하면 정상으로 돌아왔습니다.

관련 정보