Diese Dateien stammen aus einem privaten Repository, auf dem eine Live-Website ausgeführt wird. Andere Personen, die an dieser Site arbeiten, können die Repos kopieren und die Site lokal ausführen. Allerdings bereitet mir meine lokale Umgebung so viele Probleme. Das Hauptproblem liegt im Socket, der für PHP-FPM erstellt wird.
Die lokale Site, aus der ich entwickeln kann, lädt 95 % der Seiten. Es handelt sich hauptsächlich um eine OpenLayers-Kartenwebsite mit anderen, eher statischen Inhalten, die mit den Daten verknüpft sind. Ich kann die Kartenteile der Website gut bearbeiten. Im API-Teil gibt es jedoch einen 502 Bad Gateway-Fehler von nginx/1.18.0 (Ubuntu) unter dieser URL: http://localhost/api/. Die meisten API-Seiten arbeiten mit PHP, daher php-fpm. Unten sind die Arten von Fehlern aufgeführt, die ich erhalte. Hier ist der vollständige Satz an Umgebungsdateien (kombiniert in einer Datei).
error.log
Code: Select all
2024/12/20 19:44:55 [error] 24#24: *1 connect() to unix:/run/php/php8.1-fpm.sock failed (111: Unknown error) while connecting to upstream, client: 172.18.0.1, server: localhost, request: "GET /api/map_dates/ HTTP/1.1", upstream: "fastcgi://unix:/run/php/php8.1-fpm.sock:", host: "localhost", referrer: "http://localhost/us/map2/"
2024/12/20 20:28:05 [crit] 526#526: *4 connect() to unix:/run/php/php8.1-fpm.sock failed (95: Unknown error) while connecting to upstream, client: 172.18.0.1, server: localhost, request: "GET /api/map_dates/ HTTP/1.1", upstream: "fastcgi://unix:/run/php/php8.1-fpm.sock:", host: "localhost", referrer: "http://localhost/us/map2/"
Änderungen in der Datei „compose.yaml“ gegenüber dem obigen Link.
Code: Select all
# Commenting out this line
#- ${WEB_RUNTIME_ROOT_DIR}/sitez/var/run:/var/run
# Changing the entry point
#entrypoint: /bin/sh -c "service nginx start; service memcached start; service php8.1-fpm start;tail -f /dev/null"
entrypoint: /bin/sh -c "mkdir -p /run/php && chown www-data:www-data /run/php && service nginx start && service memcached start && service php8.1-fpm start && tail -f /dev/null"
Änderungen an nginx.conf. (Kommentieren und Entfernen des Kommentars der Debug-Anweisung für das Fehlerprotokoll)
Code: Select all
# Commenting the line below out in the location ~ [^/]\.php(/|$) { here }
# include snippets/fastcgi-php.conf
# Adding these lines into location /api/ { here }
# proxy_pass http://localhost:9000; # Commented out because this did not work
include fastcgi_params;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
Ich versuche, eine API-Seite zu bearbeiten, und es funktioniert nur, die php_info();-Anweisung oder eine (nicht mehr) print('Here');-Anweisung anzuzeigen. Soweit ich weiß, verarbeitet PHP nicht so, wie es sollte. Andernfalls gibt die Seite ohne print oder php_info einen 500-Fehler zurück, genau wie die Seiten, die trotz der gerade erwähnten Änderungen nicht funktionieren.
Ich habe TCP ausprobiert Ports auch, was das Problem ebenfalls nicht löste.