정말 어떤 종류의 PHP 파일이 nginx를 생성하는지에 따라 다릅니다. 이 스크립트가 작은 독립 실행 형 스크립트라면 루트로 실행하는 데 문제가 없습니다. 당분간 나는이 nginx 파일을 생성하고 작성해야하는 PHP 웹 사이트라고 생각합니다.
파일을 실제로 작성하고 작성하는 부분이 여전히 독립적이며 단순한 경우, PHP에서 명령 줄 매개 변수를 가져 오는 독립 실행 형 실행 파일 (PHP 또는 다른 파일)로 만들 것입니다. 웹 사이트 및 다음 setuid
이 실행 파일 (루트가 소유하고있는 동안). 그러나이 실행 파일은 안전해야합니다 (http://en.wikipedia.org/wiki/Setuid#Security).
대안은 php가 nginx.conf에 글을 쓰도록하는 것입니다 (직접 파일을 세계 쓰기 가능하게 만들고 그룹 쓰기 가능으로 만들고 PHP 사용자가있는 그룹에 부여하거나 별도의 프로세스를 사용하여 php로 작성된 파일에서 파일을 복사합니다). 이것은 nginx.conf 파일이 실행될 명령 (예 : 인증 또는 cgi)을 포함 할 수 있고 루트 (아마도 같은 구성 파일이므로 명령으로)로 실행될 수 있기 때문에 매우 무서운 것입니다. . 그래서 이런 식으로 당신은 기본적으로 루트로서 임의의 명령을 실행하는 PHP 사용자를위한 문을 열어 ....
작동하지 않을 수도있는 또 다른 한 가지 : 나는 아마도 그것을 조정할 것입니다. 또는 설정 파일에있는 두 개의 매개 변수. 다른 위치 (php 쓰기 가능)에서이 하나 또는 두 개의 매개 변수를 읽을 수 있는지 확인하십시오.