Привет, у меня есть сервер nginx, работающий на Linux-машине. Я могу подключить его к локальному хосту, используя curl -v http://localhost:8080
хорошо. Но не могу подключить его к использованию curl -v http://<machine-ip>:8080
или из браузеров на другом компьютере.
Конфигурационный файл
server {
listen 8080;
listen [::]:8080;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
try_files $uri $uri/ =404;
}
}
Порт 8080 прослушивается на IPv4 и IPv6, поскольку sudo netstat -tulpn | grep nginx
дает
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 123495/nginx: maste
tcp6 0 0 :::8080 :::* LISTEN 123495/nginx: maste
Брандмауэр не работает, так как делает sudo ufw status
сказать status: inactive
. Я просмотрел много ответов на различных сайтах обмена стеками, но не могу понять проблему. Был бы признателен за любую помощь. TIA.
Ошибка заключалась в том, что порт не был открыт со стороны Azure. Следуйте этим инструкциям, чтобы разрешить входящий трафик на порт 8080, как описано Вот, перезагрузите компьютер, и теперь он работает нормально.
Поскольку ваш брандмауэр отключен, сначала проверьте журнал nginx. Журнал nginx по умолчанию можно найти здесь -
vi /var/log/nginx/error.log
vi /var/log/nginx/access.log
Если регистрируется какая-либо ошибка, то найдите решение в Google. Если в этих файлах журнала ничего нет, попробуйте перезагрузить или перезапустить службу nginx.
sudo systemctl перезагрузить nginx
sudo systemctl перезапустить nginx