@dobromin

NGINX Не передает запросы на второй сайт?

Здравствуйте!
Не могу разобраться что не доделал, а вообще хотелось бы узнать как диагностировать проблему.

Второй сервер apache настроен принимает на порт 1080 (телнет работает сайт открывается и по ип и по имени) доменное имя tes1.ru
Третий сервер apache настроен принимает на порт 1180 (телнет работает сайт открывается и по ип и по имени) доменое имя test2.ru
Первый сервер nginx настроен (по имени test1.ru осуществляется переход все ок, по имени test2.ru yandex браузер пишет "а странице обнаружена циклическая переадресация" IE "Не удается отобразить эту страницу"
Лог error в апаче пустой,
сеть в который находятся сервера 10.20.1.0
test1 10.20.1.2
test2 10.20.1.3
nginx 10.20.1.5
telnet с nginx по адресам на порты "порт 1080" "имя test1" "ип 10.20.1.2" и "порт 1180" "имя test2" "ип 10.20.1.3" все успешно!

Что делать даже и не знаю, как отследить и про мониторить тоже, так как в этом совсем зелень.

конфиг nginx

user www-data;
worker_processes 4;
pid /var/run/nginx.pid;

events {
worker_connections 768;
# multi_accept on;
}

http {

##
# Basic Settings
##

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
# server_tokens off;

# server_names_hash_bucket_size 64;
# server_name_in_redirect off;

include /etc/nginx/mime.types;
default_type application/octet-stream;

##
# Logging Settings
##

access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log debug;

##
# Gzip Settings
##

gzip on;
gzip_disable "msie6";

# gzip_vary on;
# gzip_proxied any;
# gzip_comp_level 6;
# gzip_buffers 16 8k;
# gzip_http_version 1.1;
# gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

#include /etc/nginx/naxsi_core.rules;


#passenger_root /usr;
#passenger_ruby /usr/bin/ruby;

##
# Virtual Host Configs
##

include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}


Конфиг в nginx сайта test1.ru (test2.ru идентичен, кроме естественных изменений это порт имя ип)

server {
listen 80;
index index.html index.php;
server_name test1.ru www.test1.ru;


location / {
proxy_pass 10.20.1.2:1080/;
proxy_set_header Host 10.20.1.2;
proxy_set_header
X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_connect_timeout 120;
proxy_send_timeout 120;
proxy_read_timeout 180;
}

#location ~* \.(jpg|jpeg|gif|png|ico|css|bmp|swf|js|html|txt)$ {
#root /var/www/wordpress/;

#}


}


nginx debug
не знаю правильно сделал или нет но не стал выгружать сюда дебаг, он немаленький.
посмотреть можно тут
  • Вопрос задан
  • 522 просмотра
Пригласить эксперта
Ответы на вопрос 3
Погоди а где у тебя тут вообще второй сервер присутствует ?
у теб я proxy_pass 10.20.1.2:1080/; и все, откуда второй сервер?
http {
    upstream myapp1 {
        server srv1.example.com;
        server srv2.example.com;
        server srv3.example.com;
    }

    server {
        listen 80;

        location / {
            proxy_pass http://myapp1;
        }
    }
}
    }

У тебя вообще где?
Ответ написан
nonname
@nonname
По-хорошему в proxy_pass обычно и схему передают. Вот так "proxy_pass http://10.20.1.2:1080;"
Ответ написан
@dobromin Автор вопроса
в общем, обратил внимание что на сервере site2 нет симлинка на дефолтовый сайт, это на случай если другие хосты не работают, как я понял полезен.
Так вот включив дефаулт, обнаружил что теперь при обращении по имени site2.ru он переадресовывает на дефолтовый сайт. Дефолтовый сайт слушает тот же порт. Блин ну что же это за г ну а что я не так сделал? как заставить апач работать корректно с несколькими хостами и обращаться к нему по имени а не по ип, соответственно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы