php7.0-fpm이 작동하지 않습니다

php7.0-fpm이 작동하지 않습니다

php7.0Apache 와 Ubuntu 16.04 시스템을 설치했는데 mysql"php가 실행되고 있지 않습니다."라는 응답을 받았습니다. 내 가상 호스트 구성은 다음과 같습니다.

<VirtualHost *:80>
  ServerAdmin [email protected]
  ServerName www.example.com
  DocumentRoot /var/www/sites/www.example.com/httpdocs
  ScriptAlias "cgi-bin" "/var/www/sites/wwww.example.com/cgi-bin"

  ErrorLog ${APACHE_LOG_DIR}/www.example.com.error_log

  LogLevel debug

  CustomLog ${APACHE_LOG_DIR}/www.example.com.log combined

    <IfModule mod_fastcgi.c>

    AddHandler php7-fcgi .php
    Action php7-fcgi /php7-fcgi virtual
    Alias /php7-fcgi-kermit /usr/lib/cgi-bin/php7-fcgi-kermit
    FastCgiExternalServer /usr/lib/cgi-bin/php7-fcgi-kermit -socket /run/php/php7.0-fpm.kermit.sock -pass-header Authorization

    <Directory "/usr/lib/cgi-bin">
    Require all granted
    </Directory>
    </IfModule>

  <IfModule mod_fastcgi.c>
    <FilesMatch ".+\.ph(p[345]?|t|tml)$">
      SetHandler php7-fcgi-kermit
    </FilesMatch>
  </IfModule>

</VirtualHost>

사이트에 접속하려고 하면 PHP를 구문 분석하는 것이 아니라 화면에 인쇄하는 것입니다.

누구든지 어떤 아이디어가 있습니까?

나는 Apache 2.2에서 작동했던 다른 모든 fpm 항목을 제거하고 이 줄을 conf에 추가했습니다.

ProxyPassMatch ^/(.*\.php(/.*)?)$ unix:/var/run/php/php7.0-fpm.kermit.sock|fcgi://localhost/var/www/sites/www.example.com/httpdocs  

이제 오류 로그에 다음 오류가 표시됩니다.

[Wed Mar 21 13:04:35.539499 2018] [proxy:error] [pid 26569] (13)권한 거부됨: AH02454: FCGI: Unix 도메인 소켓 /var/run/php/php7.0-fpm에 연결을 시도합니다. kermit.sock(localhost) 실패

소켓에 대한 권한이 올바른 것 같습니다.

srw-rw----  1 kermit   kermit     0 Mar 21 13:00 php7.0-fpm.kermit.sock=  

하지만 = 기호가 어디서 나오는지 모르겠습니다.

답변1

mod_proxy_fcgiPHP-FPM을 사용하는 경우 Apache 2.4에서 새로 제공되며 이러한 유형의 사용 사례에 적합한 를 사용하는 것을 고려해야 합니다 . 그만큼PHP-FPM용 Apache 위키 항목시작하는 데 도움이 되는 좋은 지침이 있습니다.

그만큼mod_proxy_fcgi선적 서류 비치또한 PHP-FPM 설정에 대한 구체적인 예도 포함되어 있습니다.PHP 문서유용한 정보도 있습니다.

답변2

소켓 권한이 잘못되었습니다: "srw-rw---- 1 kermit kermit 0 Mar 21 13:00 php7.0-fpm.kermit.sock"

Apache가 www-data로 실행된다고 말씀하셨습니다.

kermit에 www-data를 추가하거나 php-fpm 풀 구성의 소켓 권한을 kermit:www-data와 같은 것으로 변경해야 합니다.

답변3

Apache-22 및 24의 이후 버전에서 발생한 몇 가지 다른 변경 사항과 함께 그룹을 www-data로 변경하여 이 문제를 해결할 수 있었습니다.

관련 정보