Ответ 1
У меня была точно такая же проблема. Я просто прокомментировал строку в файле nginx.conf:
include /etc/nginx/sites-enabled/*;
изменено на
#include /etc/nginx/sites-enabled/*;
Я пытаюсь запустить минималистский обратный прокси и придумал следующее:
events {
worker_connections 4096;
}
http {
server {
listen 80;
location / {
proxy_pass http://127.0.0.1:3000/;
}
}
}
`
Однако, когда я обращаюсь к этому серверу, я получаю стандартную "добро пожаловать на страницу nginx" вместо ответа с сервера, работающего на порту 3000.
Если я ssh на машине и запустил curl http://127.0.0.1:3000/
, я получаю желаемый результат (и в конечном итоге я запустил этот сервер на порту 80
, и он работал нормально, поэтому я знаю, что он связан с конфигурацией обратного прокси).
У меня была точно такая же проблема. Я просто прокомментировал строку в файле nginx.conf:
include /etc/nginx/sites-enabled/*;
изменено на
#include /etc/nginx/sites-enabled/*;
Объясните сообщение Vijay через ответ, так как обмен еще не позволит мне прокомментировать.
Комментирование каталога с поддержкой сайтов, вероятно, требуется, потому что вы используете стандартный файл nginx.conf. Вы заметите, что строка уже находится в директиве http. Если вы используете стандартную конфигурацию, вы переопределяете директиву http в другой директиве http. Вы также можете обновить файл своего сайта только с директивой сервера, а не с директивой http.
Стандартный файл nginx.conf:
worker_processes 4;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
gzip on;
gzip_http_version 1.0;
gzip_comp_level 5;
gzip_proxied any;
gzip_vary off;
gzip_types text/plain text/css application/x-javascript text/xml application/xml application/rss+xml application/atom+xml text/javascript application/javascript application/json text/mathml;
gzip_min_length 1000;
gzip_disable "MSIE [1-6]\.";
server_names_hash_bucket_size 64;
types_hash_max_size 2048;
types_hash_bucket_size 64;
client_max_body_size 1024;
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
пример совместимого файла сайта в разрешенных сайтах:
server {
server_name {server name};
listen 80;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
location / {
proxy_pass http://example.com:8080;
proxy_set_header Host $host;
}
}
Возможно, также поможет проверка ссылки с сайтов, доступных на сайты. У меня была точка симлинк в никуда, поэтому nginx никогда не читал конфигурацию. В моем случае это было
ls -lh /etc/nginx/sites-enabled
lrwxrwxrwx 1 root root 23 Feb 19 11:11 default -> sites-available/default
вместо
ls -lh /etc/nginx/sites-enabled
lrwxrwxrwx 1 root root 23 Feb 19 11:11 default -> ../sites-available/default