Настройка Apache 2.4 с FastCGI на Ubuntu 16.04 - Что мне делать с php7.0-fpm.conf?

Посмотрите на dnsmasq вместо этого, гораздо проще настроить, чем bind: вам просто нужно его установить, и он будет использовать DNS, определенный в /etc/resolv.conf, как сервер восходящего потока, а также в / etc / hosts вы можете определить 2 записи, которые вам нужны.

Не забудьте перезагрузить его при каждом изменении.

4
задан 25 May 2017 в 00:40

2 ответа

Я попал в ту же путаницу, я чувствую вашу боль. После многого чтения мне стало ясно, что большинство статей устарели и ссылаются на предыдущие методы (или иногда комбинации).

Используя PHP-FPM с встроенной конфигурацией Ubuntu 16.04, вы нужно только сделать это:

sudo a2enconf php7.0-fpm sudo a2enmod proxy proxy_fcgi

Я сделал большую часть того, что вы сделали, а затем удалил все, когда эта настраиваемая конфигурация не имела смысла.

Что такое существующий php7.0-fpm.conf для?

Конфигурация, найденная вами пакетом, предназначена для использования mod_proxy_fcgi. Он связывает файлы .php через mod_proxy_fcgi с PHP FPM, используя mod_proxy через Unix Domain Socket. Насколько я знаю, это самый современный «рецепт» (из шести доступных сейчас!)

Вам не нужно устанавливать libapache2-mod-fastcgi, это другой, более старый метод. Вам не нужно писать эту конфигурацию - это для использования mod_fastcgi напрямую. Вам не нужно устанавливать actions fastcgi alias, поскольку они должны конфигурировать mod_fastcgi.

Мне показалось странным, что ни одна из статей - даже для Ubuntu 16 - не упоминает о новом рецепте, настроенном для вас !

Этот комментарий разъяснил мне историю:

Что такое существующий php7.0-fpm.conf для?

(mod_fastcgi, httpd 2.2) http : //wiki.apache.org/httpd/php-fastcgi (mod_fcgid, httpd 2.2) http://wiki.apache.org/httpd/php-fcgid (mod_proxy_fcgi, httpd 2.4) http://wiki.apache.org / httpd / PHP-FPM http://php.net/manual/en/install.unix.debian.php#112544 (2013)

Предпочтительным методом является fastcgi, используя любой из этих рецептов:

Кроме того, эта статья из Apache содержит три подпараметра для настройки mod_proxy_fcgi для подключения к FPM, используя либо ProxyPassMatch, либо SetHandler + UDS (я думаю, что UDS с Apache 2.4.10, но я потерял ссылка)

https://wiki.apache.org/httpd/PHP-FPM

Итак, я пришел к выводу, что есть шесть способов сконфигурируйте его:

Apache PHP module: mod_php (старый путь) Через FastCGI - с помощью Handler / Action / Alias ​​/ FastCgiExternalServer config a. mod_fastcgi b. mod_fcgid Использование PHP-FPM через mod_proxy_fcgi, настроенное через: a. Сокет TCP (IP и порт) ProxyPassMatch ... fcgi: //127.0.0.1: 9000 / путь / b. Unix доменный сокет (UDS) ProxyPassMatch ... unix: / path / to / socket c. (UDS) через SetHandler «proxy: unix: OR SetHandler» proxy: fcgi:

В грубом историческом порядке:

10
ответ дан 24 July 2018 в 20:01

Я попал в ту же путаницу, я чувствую вашу боль. После многого чтения мне стало ясно, что большинство статей устарели и ссылаются на предыдущие методы (или иногда комбинации).

Используя PHP-FPM с встроенной конфигурацией Ubuntu 16.04, вы нужно только сделать это:

sudo a2enconf php7.0-fpm sudo a2enmod proxy proxy_fcgi

Я сделал большую часть того, что вы сделали, а затем удалил все, когда эта настраиваемая конфигурация не имела смысла.

Что такое существующий php7.0-fpm.conf для?

Конфигурация, найденная вами пакетом, предназначена для использования mod_proxy_fcgi. Он связывает файлы .php через mod_proxy_fcgi с PHP FPM, используя mod_proxy через Unix Domain Socket. Насколько я знаю, это самый современный «рецепт» (из шести доступных сейчас!)

Вам не нужно устанавливать libapache2-mod-fastcgi, это другой, более старый метод. Вам не нужно писать эту конфигурацию - это для использования mod_fastcgi напрямую. Вам не нужно устанавливать actions fastcgi alias, поскольку они должны конфигурировать mod_fastcgi.

Мне показалось странным, что ни одна из статей - даже для Ubuntu 16 - не упоминает о новом рецепте, настроенном для вас !

Этот комментарий разъяснил мне историю:

Что такое существующий php7.0-fpm.conf для?

(mod_fastcgi, httpd 2.2) http : //wiki.apache.org/httpd/php-fastcgi (mod_fcgid, httpd 2.2) http://wiki.apache.org/httpd/php-fcgid (mod_proxy_fcgi, httpd 2.4) http://wiki.apache.org / httpd / PHP-FPM http://php.net/manual/en/install.unix.debian.php#112544 (2013)

Предпочтительным методом является fastcgi, используя любой из этих рецептов:

Кроме того, эта статья из Apache содержит три подпараметра для настройки mod_proxy_fcgi для подключения к FPM, используя либо ProxyPassMatch, либо SetHandler + UDS (я думаю, что UDS с Apache 2.4.10, но я потерял ссылка)

https://wiki.apache.org/httpd/PHP-FPM

Итак, я пришел к выводу, что есть шесть способов сконфигурируйте его:

Apache PHP module: mod_php (старый путь) Через FastCGI - с помощью Handler / Action / Alias ​​/ FastCgiExternalServer config a. mod_fastcgi b. mod_fcgid Использование PHP-FPM через mod_proxy_fcgi, настроенное через: a. Сокет TCP (IP и порт) ProxyPassMatch ... fcgi: //127.0.0.1: 9000 / путь / b. Unix доменный сокет (UDS) ProxyPassMatch ... unix: / path / to / socket c. (UDS) через SetHandler «proxy: unix: OR SetHandler» proxy: fcgi:

В грубом историческом порядке:

9
ответ дан 18 July 2018 в 12:46

Другие вопросы по тегам:

Похожие вопросы: