nginx: connect () не удалось (111: соединение отклонено) при подключении к восходящему потоку

80

Пытаюсь развернуть свой первый портал.

Я получаю ошибку тайм-аута шлюза 502 в браузере, когда я отправлял запрос через браузер

когда я проверил логи, я получил эту ошибку

 2014/02/03 09:00:32 [error] 16607#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 14.159.131.19, server: foo.com, request: "GET HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "22.11.180.154"

есть ли проблема, связанная с разрешениями

Абхишек Трипати
источник
2
пожалуйста, добавьте информацию, чтобы помочь понять проблему, вашу конфигурацию, что вы сделали? какие ссылки не работают, работают ли они или нет и т. д.
Mohammad AbuShady
2
моя проблема была решена .... я не установил php на свой сервер
Abhishek Tripathi
@lucky Так что, думаю, лучше закрыть этот вопрос.
Farsheed

Ответы:

91

Я не думаю, что это решение сработает в любом случае, потому что вы увидите сообщение об ошибке в файле журнала ошибок.

Решение оказалось намного проще, чем я думал.

просто откройте следующий путь к вашему php5-fpm

sudo nano /etc/php5/fpm/pool.d/www.conf

или если вы администратор root

nano /etc/php5/fpm/pool.d/www.conf

Затем найдите эту строку и раскомментируйте ее:

listen.allowed_clients = 127.0.0.1

Это решение позволит вам использовать listen = 127.0.0.1:9000 в ваших блоках vhost

вот так: fastcgi_pass 127.0.0.1:9000;

после внесения изменений все, что вам нужно, это перезапустить или перезагрузить как Nginx, так и Php5-fpm

Php5-fpm

sudo service php5-fpm restart

или же

sudo service php5-fpm reload

Nginx

sudo service nginx restart

или же

sudo service nginx reload

Из комментариев:

Также комментируйте

;listen = /var/run/php5-fpm.sock 

и добавить

listen = 9000
Цифровой сайт
источник
30
listen = 9000and;listen = /var/run/php5-fpm.sock
n611x007 01
1
В CentOS 7 этот файл был у /etc/php-fpm.d/www.confменя, и мне пришлось добавить listen = 9000и закомментировать listen = /var/run/php-fpm/php-fpm.sock.
junkie
2
Почему бы не изменить конфигурацию NGINX на использование сокетов вместо localhost: 9000? Изменив fastcgi_passстроку на "astcgi_pass unix:/run/php/php7.0-fpm.sock;
КНеджад
0

У меня была такая же проблема, когда я написал два апстрима в NGINX conf

upstream php_upstream {
    server unix:/var/run/php/my.site.sock;
    server 127.0.0.1:9000;
}

...

fastcgi_pass php_upstream;

но в /etc/php/7.3/fpm/pool.d/www.confя слушал только сокет

listen = /var/run/php/my.site.sock

Итак, мне нужен только сокет, 127.0.0.1:9000и я просто удалил восходящий IP + порт.

upstream php_upstream {
    server unix:/var/run/php/my.site.sock;
}

Это можно переписать без апстрима

fastcgi_pass unix:/var/run/php/my.site.sock;
and1er
источник