LINUX.ORG.RU
ФорумAdmin

Ошибка в конфиге Nginx

 


0

1

Понабилось по-быстрому соорудить на Nginx реверсный прокси для сайта.
Накидал такой простенький конфиг:

	server {
		server_name pupkin.ru;
		listen      183.183.183.183:8080;
		location / {
			proxy_pass       http://95.95.95.95:80;
			proxy_redirect   default;
			proxy_set_header Host              $http_host;
			proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
			proxy_set_header X-Forwarded-Proto $scheme;
			proxy_set_header X-Real-IP         $remote_addr;
		}
	}

но nginx, зараза, не хочет стартовать:
service nginx start
Запускается nginx: nginx: [emerg] "server" directive is not allowed here in /etc/nginx/nginx.conf:1

Где же я ошибся??

★★★★

Ответ на: комментарий от chukcha

Мой рабочий кусок для проксирования

location / {

proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;

proxy_pass https://site.org:443/;
}

Вверх у nginx стандартный:

server {
  listen 80;
  listen [::]:80;
  listen 443 ssl http2;
  listen [::]:443 ssl http2;
  ssl_certificate /usr/local/nginx/conf/ssl/site.xyz.crt;
  ssl_certificate_key /usr/local/nginx/conf/ssl/site.xyz.key;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
  ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECD$
  ssl_prefer_server_ciphers on;
  ssl_session_timeout 10m;
  ssl_session_cache builtin:1000 shared:SSL:10m;
  ssl_buffer_size 1400;
  add_header Strict-Transport-Security max-age=15768000;
  ssl_stapling on;
  ssl_stapling_verify on;
  server_name site.xyz;
  access_log off;
  index index.html index.htm index.php;
  root /data/wwwroot/site.xyz;
  if ($ssl_protocol = "") { return 301 https://$host$request_uri; }
thebadgateway ()
Ответ на: комментарий от thebadgateway

Не знаю насчет корректности, но покопавшись вчера, у меня получился такой коротенький конфиг для CentOS 6:

#-------Конфиг /etc/nginx/nginx.conf ---------

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


http {
server  {
        server_name radioscanner.ru www.radioscanner.ru;        # доменное имя реального веб-сервера
        location / {
                proxy_pass       http://www.radioscanner.ru:80; # IP/URL и порт реального веб-сервера
                proxy_redirect   default;
                proxy_set_header Host              $http_host;
                proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_set_header X-Real-IP         $remote_addr;
                   }
        listen      192.192.192.192:3333;                      # IP и порт реверсного прокси-сервера
        }
}

events {
    worker_connections  1024;
       }

# ------------------- Конец конфига ----------------------------

# При смене параметров обязательно чистить кеш и куки в Браузере!
# Иначе прокси будет показываеть прежние сайты.


http проксирует, https пока не знаю.

chukcha ★★★★ ()
Ответ на: комментарий от thebadgateway

Вопрос знатокам реверсного проксирования :)
Есть такой радиолюбительский сайт с картой внизу -
http://websdr.org/
который позволяет слушать местное радио во многих уголках земного шара, которых сейчас насчитывается 165.

Выбираете, например, сайт http://websdr.ewi.utwente.nl:8901/
часоту, вид модуляции, громкость и слушаете этих радиолюбителей до упаду :)

Так вот, если пропустить эут ссылку через наш реверсный прокси на Nginx, то страница этого сайта со всеми органами отображается нормально.

Но! Нет ни звука, ни движущегося «водопада»! :(

В чем тут может быть причина?

thebadgateway

chukcha ★★★★ ()