Я не знаю, почему я получил эту ошибку каждый раз, когда пытался открыть страницу:
2013/04/06 17:52:19 [error] 5040#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "GET /info.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "localhost:8080"
Я решил это, это была проблема с конфигурационным файлом, я добавил:
location ~ .php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; }
Для меня проблема в том, что моя служба php-fpm не была запущена. Вы можете проверить его, выполнив:
service php-fpm status
и запустите его, запустив
service php-fpm start
Иногда php-fpm может работать с поврежденными экземплярами, что предотвращает перезапуск. Эта команда – это чистый способ очистить их и перезапустить php-fpm
killall -9 php-fpm; service php-fpm restart
обновите свои конфигурации, как указано выше:
location ~ .php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; }
но не забудьте перезапустить сервер nginx и php-fpm после обновления
sudo /etc/init.d/nginx restart sudo /etc/init.d/php-fpm restart
Я обнаружил, что у меня была такая же проблема с PHP7, работающей в Docker, на экземпляре Debian Jessie (8.3).
Добавлен «php-fpm -D» в мой скрипт start.sh, чтобы все начиналось каждый раз при загрузке контейнера.
Надеюсь, это поможет кому-то.
Использовать fastcgi_pass unix: /var/run/php5-fpm.sock; только nginx и php устанавливают один и тот же сервер. Если nginx и php устанавливаются на другом сервере, вы должны использовать fastcgi_pass ip server: port;