Nginx conecta con PHP-FPM mediante /run/php-fpm/tec.sock. El pool TEC debe estar instalado, escuchar allí y permitir acceso al usuario nginx. El registro concreto distingue la causa; estas instrucciones no suponen que se haya cambiado Excalibur.
sudo tail -n 50 /var/log/nginx/tec.error.log sudo systemctl status php-fpm --no-pager -l sudo journalctl -u php-fpm -n 80 --no-pager sudo php-fpm -t
getent passwd tec sudo ls -lZ /run/php-fpm/tec.sock sudo rg -n '^\[tec\]|^user|^group|^listen|^chdir' /etc/php-fpm.d/tec.conf sudo ss -xlpn sudo nginx -T
| Error del upstream | Revisar |
|---|---|
| No such file or directory | Socket ausente; pool no instalado, servicio detenido o ruta distinta |
| Permission denied | Modo 0660, propietario/grupo nginx, recorrido, ACL y AVC |
| Connection refused | Socket sin proceso escuchando; servicio y journal FPM |
| upstream prematurely closed connection | Crash, errores FPM o memoria; seguir el registro |
El ejemplo usa tec para PHP y nginx para conectar al socket. Si se configuran listen.acl_users o listen.acl_groups, FPM ignora listen.owner y listen.group. El archivo del socket puede existir aunque no haya servicio escuchando.
sudo getfacl /run/php-fpm/tec.sock sudo ausearch -m AVC,USER_AVC -ts recent sudo php-fpm -t sudo nginx -t sudo systemctl restart php-fpm sudo systemctl reload nginx curl -I https://tec.1-s.es/
Reiniciar después de corregir y validar. FPM recrea su socket con la política del pool. Conservar JSON, configuración y contextos SELinux. Evitar permisos recursivos sobre todo /var/www, desactivar SELinux o publicar phpinfo.
Instalación y diagnóstico completo · Pool TEC · Nginx conjunto · Referencia PHP-FPM