Различия
Здесь показаны различия между двумя версиями данной страницы.
Следующая версия | Предыдущая версия | ||
wiki:php-fpm-fromuser [2020/08/17 01:05] создано |
wiki:php-fpm-fromuser [2021/02/04 15:10] (текущий) [Ссылки] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Php-fpm-запуск от пользователя на apache2====== | + | ====== Php-fpm запуск от пользователя на apache2====== |
+ | <note>Проверено на ubuntu 20.04.1</note> | ||
Очень удобно иметь дело с сайтом если можно сохранять и редактировать файлы от своего пользователя, а не от www-data который ставится по умолчанию. | Очень удобно иметь дело с сайтом если можно сохранять и редактировать файлы от своего пользователя, а не от www-data который ставится по умолчанию. | ||
При работе с mod-php+mpm-prefork это делает mpm-itk, а для работы в конфигурации php-fpm+mpm-event нужны специальные настройки о которых я сейчас расскажу. | При работе с mod-php+mpm-prefork это делает mpm-itk, а для работы в конфигурации php-fpm+mpm-event нужны специальные настройки о которых я сейчас расскажу. | ||
Преимущества php-fpm+mpm-event в большей производительности и в возможность работы с http2. | Преимущества php-fpm+mpm-event в большей производительности и в возможность работы с http2. | ||
- | - Надо выключить mod-php+mpm-prefork+mpm-itk если он был установлен и включить php-fpm+mpm-event. | + | - Надо выключить mod-php+mpm-prefork+mpm-itk если он был установлен и включить php-fpm+mpm-event. <code bash> |
- | <code bash> | + | |
a2dismod php7.3 | a2dismod php7.3 | ||
a2dismod mpm_itk | a2dismod mpm_itk | ||
Строка 18: | Строка 18: | ||
systemctl restart apache2 | systemctl restart apache2 | ||
systemctl restart php7.3-fpm | systemctl restart php7.3-fpm | ||
- | |||
</code> | </code> | ||
+ | - Создаем пуул для своего пользователя. 1. копируем файл /etc/php/7.3/fpm/pool.d/www.conf с именем своего сайта например jura12.conf. 2. меняем там 3 вещи. 2.1. название пула с [www] на [jura12]. 2.2. имя пользователя и группы с user = www-data group = www-data на своего пользователя username и свою группу username. 2.3. имя файла listen = /run/php/php7.3-fpm.sock на php7.3-fpm-jura12.sock | ||
+ | - Теперь в теле своего сайта /etc/apache2/sites-enabled/jura12.ru-le-ssl.conf в разделе Virtualhost добавляем строки:<code apache> | ||
+ | <FilesMatch ".+\.ph(ar|p|tml)$"> | ||
+ | SetHandler "proxy:unix:/run/php/php7.3-fpm-jura12.sock|fcgi://localhost" | ||
+ | </FilesMatch> | ||
+ | </code>обратите внимание на имя файла sock. оно должно быть таким каким мы его поменяли ранее. | ||
+ | - Теперь можно создавать папку для сайта с правами пользователя. например <code bash>sudo mkdir /var/www/dirofmysite | ||
+ | sudo chown username:username /var/www/dirofmysite</code> | ||
+ | - Далее рестартуем сервисы.<code bash> | ||
+ | sudo systemctl restart php7.3-fpm | ||
+ | sudo systemctl restart apache2</code> | ||
+ | - безопасность. поскольку включается mod_proxy то лучше обезопасить его использование локальной сетью. иначе могут использовать ваш сервер. для этого надо в /etc/apache2/mods-enabled/proxy.conf добавить строки:<code apache> | ||
+ | <Proxy *> | ||
+ | Require all denied | ||
+ | Require local | ||
+ | Require ip 192.168.1 | ||
+ | </Proxy> | ||
+ | </code> | ||
+ | |||
===== Ссылки ===== | ===== Ссылки ===== | ||
+ | * [[https://cwiki.apache.org/confluence/display/HTTPD/PHP-FPM]] | ||
{{tag>php-fpm-fromuser}} | {{tag>php-fpm-fromuser}} | ||