내 용어가 적절하지 않은 경우 미리 사과드립니다.
그래서 저는 Nginx와 여러 PHP 버전(Remi Collet의 소프트웨어 컬렉션 사용)을 사용하여 Fedora Workstation에서 작업 중인 개발 시스템을 성공적으로 설정했습니다. 포트 9056에서 수신하는 PHP-5.6.30과 포트 9070에서 수신하는 PHP-7.0.19가 있습니다. 이것은 매우 잘 작동합니다.
오늘 아침 저는 FPM 소켓을 사용하여 두 개의 PHP 인스턴스를 실행하기로 결정했고 처음에는 PHP-FPM 서비스를 다시 시작할 때까지 작동했습니다(결과는 다음과 같습니다).502 나쁜 게이트웨이브라우저에서(13) 허가의 거부nginx error.log에 오류가 나타납니다.
PHP5.6을 예로 들면... php56-php-fpm
생성된 서비스를 처음 시작할 때 생성된 파일의 사용자와 그룹 /opt/remi/php56/root/var/run/php-fpm/www.sock
을 . 재부팅 후 . 내 fpm conf 파일은 다음과 같습니다.www.sock
nginx:nginx
php56-php-fpm
www.sock
root:root
.sock
- /opt/remi/php56/root/etc/php-fpm.d/www.conf:https://pastebin.com/EasyHyEs
- /etc/opt/remi/php70/php-fpm.d/www.conf:https://pastebin.com/dhT8AEJK
- /etc/nginx/nginx.conf:https://pastebin.com/tMuAFnGM
- /etc/nginx/conf.d/default.conf:https://pastebin.com/UjkrcaYw
지역 발전을 위해서만 이 일을 하고 있다는 점을 고려하면 이것이 올바른 방향으로 나아가는 것이 고통스럽다는 것을 깨달았습니다.그리고이 모든 작업을 수행하기 위해 포트 9056 및 9070을 사용했습니다. 그러나 소켓을 사용하면 TCP보다 속도 측면에서 이점이 있으며 로컬 개발 환경의 속도를 높일 수 있는 모든 것이 노력할만한 가치가 있다는 것을 읽었습니다.
그래서 내 질문은 다음과 같습니다
root:root
해당 FPM 서비스를 다시 시작한 후 www.sock이 재설정되는 구성에 잘못된 문제가 있습니까 ?- 소켓을 위해 포트를 포기하는 것이 정말 가치가 있습니까?
- [약간 벗어난 주제]: Remi Collet의 소프트웨어 컬렉션을 사용하면 2개의 PHP 패키지가 서로 다른 위치에 설치된 것을 볼 수 있습니다.
/opt/remi/php56
그리고/etc/opt/remi/php70
... 일관성을 위해 그 중 하나를 보다 일반적인 s 위치로 이동하는 것을 고려해야 합니까?
감사해요
답변1
확인해볼 사항이 몇 가지 있는데..
1) 기본적으로 구성 파일은 CentOS 아래의 PHP 디렉토리에 포함되어 있지 않습니다 . 구성 파일이 파일에 포함되어 있는지 php-fpm.d
확인하십시오 .include=/opt/remi/php56/root/etc/php-fpm.d/*.conf
php-fpm.conf
2) php-fpm 풀 구성에 소켓 소유권이 설정되어 있는지 확인해야 합니다. 예를 들면 다음과 같습니다.
[www]
listen = /opt/remi/php56/root/var/run/php-fpm/$pool.sock
listen.owner = someuser
listen.group = somegroup
listen.mode = 0600
답변2
내 remi의 경우 변수를 내 웹 서버 사용자로 변경 php80-php-fpm
해야 했습니다 . 예를 들어:listen.acl_users
../php-fpm.d/www.conf
;comment: replace mywebserveruser with your own user
listen.acl_users = mywebserveruser