neoks

neoks
Рейтинг
152
Регистрация
17.03.2010
">

Vilent, Спасибо, я тоже так понял но решил на всякий случай спросить, может есть подводные камни :)

Здравствуйте, подскажите ПП по донлоад трафику типа loadpays.com, но с нормальным платником не такого вида l0aadb00t.h6ag.cp.cx а как тут j-torrrent.h6ag.cp.cx , то есть когда я попал в фильм то видно и картинку от фильма и описание и т.д, пользовался бы дальше j-torrrent но там к сожалению очень старый базы и новый файлы попросту не находит.

Andreyka, не спорю, но вариант admak реализуется быстрее и проще + без дополнительного софта на сервере, а я лентяй :)

Andreyka, я прочитал и правильно вас понял, но для меня вариант просто не очень удобный.

admak

Спасибо, собственно самый лучший вариант и без гемороя :)

Тему можно закрывать.

Andreyka Спасибо, хоть что-то работает, но очень гиморойно каждый раз писать и менять всем IP адреса, может есть еще варианты без этого извращения с IP адресами ? :)

Выходит все тот же:

Testing nginx configuration: nginx: [emerg] host not found in upstream

И лежащий сервер если если один из серверов недоступен.

---------- Добавлено 14.02.2013 в 21:58 ----------

Ладно еще проще, вот конфиг,

server {

location / {

proxy_pass http://4pda.ruh:80;

proxy_set_header Host 4pda.ru;}}

Как мне перезапустить nginx с данным конфигом ? сайт именно 4pda.ruh

---------- Добавлено 14.02.2013 в 22:01 ----------

Конфиг в виде этого

upstream backend {

server 4pda.ruh:80;

server 4pda.ru:80 backup;

}

server {

location / {

proxy_pass http://backend;

proxy_set_header Host 4pda.ru;}}

так же отдает ошибку

Testing nginx configuration: nginx: [emerg] host not found in upstream

---------- Добавлено 14.02.2013 в 22:04 ----------

Можно по IP типа такого

server {

location / {

proxy_pass http://159.999.19.190;

proxy_set_header Host 4pda.ru;}}

Но если IP недоступен а он недоступен когда сервер лежит то опять вылетает

Testing nginx configuration: nginx: [emerg] host not found in upstream

---------- Добавлено 14.02.2013 в 22:07 ----------

-------

Если

server {

location / {

proxy_pass http://4pda.ruh:80$request_uri;

proxy_set_header Host 4pda.ru;}}

или

server {

location / {

proxy_pass http://4pda.ru:80$request_uri;

proxy_set_header Host 4pda.ru;}}

То вовсе 502 отдается.

Не ужели в nginx не додумались сделать функцию что бы отключить проверку сайта на доступность при прокси пасс ?

Andreyka,

Проблема в том что если один из бекендов недоступен, то я не могу перезапустить nginx так как вылетает ошибка:

Testing nginx configuration: nginx: [emerg] host not found in upstream

И весь сервер лежит, мне нужен вариант как перезапустить nginx если в данный момент один или несколько бекендов недоступны.

Ладно, тогда по другому объясню.

Я арендую сервер в vps-hosting.lv , назовем его server_01

Есть 100 клиентов, каждый проксирует свои сайты через server_01 но при этом их сайты находятся на своих серверах, то есть скажем sait_01 находиться на server_02 а sait_02 находиться на server_03 и т.д

Когда я добавляю в конфиг server_01 новый сайт клиента то это выглядит примерно так:

server {#sait_105

location / {

proxy_pass http://www.sait_105:80;

proxy_set_header Host www.sait_105.ru;

include /etc/nginx/location.conf;}}

Сам же sait_105 находиться не на server_01 а на server_90 а через server_01 он только проксируеться. Когда я добавил новый конфиг то я перезапускаю nginx что бы вместо заглушки для sait_105 отображались данный который находятся на server_90. Но когда я перезаускаю nginx то скажем сервер одного из клиента под названием server_85 не работает (перезапускаеться, под досс атакой и т.д и т.д). Значит что бы перезапустить nginx нужно удалить конфиг клиента server_85, но когда пользователи будут заходить на sait_85 то они будут видеть вместо данных с server_85 заглушку server_01 так как конфига для sait_85 не будет.

Теперь задание, нужно сделать так что если server_85 который есть в конфиге недоступен (ВРЕМЕННО), я все равно смог перезапустить nginx без удаления или комментирования конфига для server_85. Так как server_85 недоступен лиш временно и ждать когда он заработает у меня нету времени, к тому же обычно выходит еще так что когда заработает server_85 то у другого клиента обычно не работает server_74 и т.д, а выжидать когда все 100 серверов клиента будут работать тоже очень нужно и долго.

По IP так же не вариант из за того что обычно выделенные сервера, и IP адреса соответственно недоступны вместе с сервером и сайтами.

---------- Добавлено 14.02.2013 в 19:45 ----------

------------------------

В общем суть не в этом, не важно для чего и т.д, важен вопрос как можно перезапустить nginx если в нем есть конфиг:

server {#sait_105
location / {
proxy_pass http://www.sait_105:80;
proxy_set_header Host www.sait_105.ru;
include /etc/nginx/location.conf;}}

Но sait_105 не работает, к при этом sait_105 должен остаться в конфиге (удаление или комментирование с конфига не подходит)

Ну сейчас он не пашет, через минут 10 сайт клиента будет работать, но мой сервер будет отдавать вместо сайта клиента, заглушку сервера так как конфиг для этого сайта я удалил, что бы сайт клиента отображался, мне нужно добавить обратно конфиг который я удалил и сделать рестарт nginx, но во время рестарта неработает теперь другой сайт, и так по кругу, поэтому такой вариант не подходит.

Мне нужен вариант где можно сделать рестарт nginx независимо от того работает сайт клиента или нет.

---------- Добавлено 14.02.2013 в 16:03 ----------

Нашел дерективу "proxy_next_upstream" но внятной инструкции как ею пользоваться как всегда нету.

Всего: 705