Есть установленные httpd+php-fpm:
- кроме рута, создана группа `http`, куда входят юзеры `http` (от него запускается apache) и `devops` (реальный юзер, который должен иметь право редактирования и выполнения)
- домашняя папка юзера `http` находится в `/home/http/`, там же в `/home/http/sites/` лежат директории нескольких сайтов, они же виртуальные хосты апача;
- все файлы в директории `/home/http/` имеют группу `http` и пользователя `http` и права `775` для директорий + `664` для файлов (вместо привычных 755 и 644 - для того чтобы `devops` мог вносить изменения).
- php-fpm со следующими настройками пула;
[http]
user = http
group = http
listen.owner = http
listen.group = http
listen.mode = 0660
listen.allowed_clients = 127.0.0.1
listen = /run/php-fpm/php-fpm-httpd.sock
pm = dynamic
pm.max_children = 4
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 2
catch_workers_output = yes
- для `httpd` есть соотв. секция с указанием сокета.
Если указана в общем конфиге - апач отдает файлы без выполнения.
Если добавить в соотв. вирутальный хост - получаем 403.
<IfModule proxy_fcgi_module>
<FilesMatch "\.(php)$">
SetHandler "proxy:unix:/run/php-fpm/php-fpm-httpd.sock"
</FilesMatch>
</IfModule>
httpd 2.4.62, php (fpm-fcgi) 8.2.27, страртует всё через systemd
После апдейта ПО - конфиги не изменились, но апач перестал обрабатывать php (access denied, HTTP 403).
В логах апача:
AH01071: Got error 'PHP message: PHP Warning: PHP Request Startup: Failed to open stream: Permission denied in Unknown on line 0; Unable to open primary script:
1. На что ещё можно посмотреть, где искать корень проблемы?
гугл и чатгпт опрошены, пока что ни одно из потенциальный решений проблемы не помогло.
2. Как было бы правильнее в принципе?
3. Есть ли смысл запускать php-fpm от других user:group?