PDA

Bekijk de volledige versie : Howto: использование вебсервера nginx (SSL) для доступа к встроенному веб-интерфейсу



angel_il
19-07-2008, 23:54
howto: Использование вебсервера nginx (SSL) для доступа к встроенному веб-интерфейсу

1) Устанавливаем nginx (кому надо выложу сборку с поддержкой SSL)
2) настраиваем backend соединение со встроенным веб-сервером
в файле /opt/etc/nginx/nginx.conf должно быть прописано:

server {
listen 443;
server_name ДоменноеИмяРоутера;

ssl on;
ssl_certificate cert.pem;
ssl_certificate_key cert.key;

ssl_session_timeout 5m;

ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSL v2:+EXP;
ssl_prefer_server_ciphers on;

location / {
proxy_pass http://127.0.0.1:80/;
proxy_redirect off;

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

ДоменноеИмяРоутера заменить на ваше доменное имя роутера.

3) создать сертификаты


openssl req -new -x509 -days 9999 -nodes -out cert.pem -keyout cert.key

Спасибо Nebulosa за подсказку.

файлы cert.key и cert.pem необходимо положить в папку /opt/etc/nginx/
Собственно все.
PS: заходить на роутер так https://ДоменноеИмяРоутера

Stud2000
19-07-2008, 23:54
Интересует кто-нить всё таки поднять nginx на wl500gP
у меня пишет ошибку:
2008/07/20 02:46:40 [emerg] 2801#0: epoll_create() failed (89: Function not implemented)
2008/07/20 02:46:40 [alert] 2798#0: worker process 2801 exited with fatal code 2 and can not be respawn

пробовал все остальные методы обработки соединений (http://sysoev.ru/nginx/docs/events.html) однако привели к тому же результату.

Novik
20-07-2008, 09:57
однако привели к тому же результату.
select должен прокатить. Если таки нет - диагностика на нем всяко должна быть другой. Ее и пишите сюда.

Stud2000
20-07-2008, 13:37
Только вот в репозитарии nginx собран без поддержки select, а пересобрать его на роутере не получается т.к. нет gcc

Novik
20-07-2008, 14:17
нет gcc
1) Пакет с gcc таки есть. Искать по форуму по словам "компиляция" и т.п.
2) Кросс-компиляцию в любом случае никто не отменял.

Stud2000
20-07-2008, 20:36
Кросскомпиляция это что и как оно работает? простите мою невежественность.

Novik
20-07-2008, 22:01
Кросскомпиляция это что и как оно работает?
1) Кроме нативной компиляции gcc обеспечивает и кросс-комиляцию. Т.е. возможность собрать на одной машине файлы, которые будут выполняться на другой (в том числе с другой архитектурой и т.п.)
Смотреть, например, тут - http://wl500g.info/showpost.php?p=51465&postcount=10
2) На предмет нативной компиляции искать поиском по слову buildroot, если по слову "компиляция" Вы почему-то ничего не нашли.

KernelMadness
01-09-2008, 19:56
метод select помоему снижает скоростные характеристики nginx. Лучше было бы с poll или rtsig.

Nebulosa
18-09-2008, 14:09
Метод Poll

Nebulosa
21-10-2008, 11:34
Очередное обновление.

macek
21-10-2008, 13:35
Очередное обновление.

А что нового, можно полюбопытствовать?

Nebulosa
14-11-2008, 08:31
0.7.21 11.11.2008
Изменения в модуле ngx_http_limit_req_module.
Добавление: поддержка EXSLT в модуле ngx_http_xslt_module.
Изменение: совместимость с glibc 2.3.

0.7.20 10.11.2008
Изменения в модуле ngx_http_gzip_filter_module.
Добавление: модуль ngx_http_limit_req_module.
Исправление: директивы вида "proxy_pass http://host/some:uri" не работали; ошибка появилась в 0.7.12.
Исправление: при использовании HTTPS запросы могли завершаться с ошибкой "bad write retry".
Исправление: модуль ngx_http_secure_link_module не работал внутри location'ов с именами меньше 3 символов.
Исправление: переменная $server_addr могла не иметь значения.

Nebulosa
24-11-2008, 07:37
Очередное обновление :) метод Poll.

В качестве бонуса я прикрутил FancyIndex и статус сервера.

Подробнее здесь http://wiki.codemongers.com/NginxNgxFancyIndex
и здесь http://nobrend.ru/?p=22

0.7.22 20.11.2008
Добавление: параметр none в директиве smtp_auth.
Добавление: переменные "$cookie_...".
Исправление: директива directio не работала с файловой системой XFS.
Исправление: resolver не понимал большие DNS-ответы.

macek
24-11-2008, 08:54
Nebulosa, а как насчёт epoll?
как считаете, будет какая-то выгода?

Nebulosa
24-11-2008, 15:30
Nebulosa, а как насчёт epoll?
как считаете, будет какая-то выгода?

Перечитайте первое сообщение в теме, затем -
http://sysoev.ru/nginx/docs/events.html , а именно на это обратите внимание -
epoll — эффективный метод, используемый в Linux 2.6+.
т.е. выгода от использования метода есть, но в текущей прошивке этот метод нереализуем, из-за старой версии ядра:


$uname -a
Linux AsusWMFR 2.4.20 #18 Sun Mar 30 13:13:29 MSD 2008 mips unknown

macek
24-11-2008, 20:14
А как считаете, пропатчить наше ядро до поддержки epoll подъёмно?
или можно ли как вариант написать свой кернел-модуль с реализацией epoll?

(...просто как раз сейчас по методам обработки соединений курсач пишу, и для наглядности хотелось бы на реальном девайсе продемонстрировать)

Nebulosa
25-11-2008, 07:04
А как считаете, пропатчить наше ядро до поддержки epoll подъёмно?
или можно ли как вариант написать свой кернел-модуль с реализацией epoll?


Тут я затрудняюсь вам ответить, Вам нужно спросить других, например автора прошивки - Олега. :)

KASRU
26-11-2008, 16:49
Очередное обновление :) метод Poll.

В качестве бонуса я прикрутил FancyIndex и статус сервера.

Подробнее здесь http://wiki.codemongers.com/NginxNgxFancyIndex
и здесь http://nobrend.ru/?p=22

0.7.22 20.11.2008
Добавление: параметр none в директиве smtp_auth.
Добавление: переменные "$cookie_...".
Исправление: директива directio не работала с файловой системой XFS.
Исправление: resolver не понимал большие DNS-ответы.

Спасибо за сборку, но у меня при установке пишет, что md5 сумма не совпадает.
Подскажите в чем проблема?


[root@wl-500 tmp]$ ls -la
total 256
drwxr-xr-x 2 root root 4096 Nov 26 18:43 .
drwxr-xr-x 19 root root 4096 Nov 26 18:45 ..
-rw-r--r-- 1 root root 248122 Nov 24 10:37 nginx_0.7.22-1_mipsel.ipk
[root@wl-500 tmp]$ ipkg install nginx_0.7.22-1_mipsel.ipk
Installing nginx (0.7.22-1) to /opt/...
Nothing to be done
Successfully terminated.
Collected errors:
Package nginx md5sum mismatch. Either the ipkg or the package index are corrupt. Try 'ipkg update'.
[root@wl-500 tmp]$

angel_il
29-11-2008, 23:29
странно но с той сборкой что выложена здесь у меня в логе лезло вот это

...*2 sendfile() failed (89: Function not implemented) while sending response to client, client: 172.18.18.10, server....

пересобрал все заработало...

Nebulosa
30-11-2008, 07:55
Пользовался таким мануалом http://nobrend.ru/?p=24


Создаем сертификаты вот такой командой:

openssl req -new -x509 -days 9999 -nodes -out server.crt -keyout server.key

В Common name вписываем имя домена, поля не должны быть пустыми.

Прописываем в nginx:

ssl on;
ssl_certificate ssl/server.crt;
ssl_certificate_key ssl/server.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSL v2:+EXP;
ssl_prefer_server_ciphers on;

Nebulosa
30-11-2008, 08:22
Package nginx md5sum mismatch. Either the ipkg or the package index are corrupt. Try 'ipkg update'.


Это нормальное явление, поскольку nginx есть в репазитории, то проверяется его контрольная сумма, а она отличается, поскольку пакет скомпилирован с другими опциями.

нужно предварительно поправить md5 и размер в файле /opt/lib/ipkg/lists/optware:

$ md5sum nginx_0.7.22-1_mipsel.ipk
57eb6ffcbf62264ef8ca23dfc2cd7747 /opt/nginx_0.7.22-1_mipsel.ipk
$ ls -l nginx_0.7.22-1_mipsel.ipk
-rw-r--r-- 1 root root 248126 Nov 28 15:05 /opt/nginx_0.7.22-1_mipsel.ipk

Следовательно в /opt/lib/ipkg/lists/optware должно быть так:


...
Package: nginx
Version: 0.7.22-1
Depends: openssl, pcre, zlib
Section: net
Architecture: mipsel
Maintainer: NSLU2 Linux <nslu2-linux@yahoogroups.com>
MD5Sum: 57eb6ffcbf62264ef8ca23dfc2cd7747
Size: 248126
Filename: nginx_0.7.22-1_mipsel.ipk
Source: http://sysoev.ru/nginx/nginx-0.7.22.tar.gz
Description: A high perfomance http and reverse proxy server, and IMAP/POP3 proxy server.
...

а затем ipkg install nginx_0.7.22-1_mipsel.ipk

при следующем ipkg update файл /opt/lib/ipkg/lists/optware восстановит свои значения.

angel_il
30-11-2008, 14:09
спасибо подправил хаутушку

Decaz
31-12-2008, 19:34
странно но с той сборкой что выложена здесь у меня в логе лезло вот это

...*2 sendfile() failed (89: Function not implemented) while sending response to client, client: 172.18.18.10, server....

пересобрал все заработало...
А с какими параметрами пересобрал?

RekoD
03-01-2009, 22:06
А он поддерживает что-то вроде .htaccess ?

angel_il
05-01-2009, 19:08
поддерживает, но советую все таки nginx

Freepriman
06-01-2009, 06:55
поддерживает, но советую все таки nginx

А он под асусом нормально заводится?

angel_il
06-01-2009, 18:12
глюков пока не видел.

RekoD
07-01-2009, 14:20
nginx тоже .htaccess/.htpasswd не поддерживает...

FilimoniC
24-01-2009, 16:56
У вас есть дома Windows-машина. На ней запущен uTorrent, eMule, MobileBalance, еще что-нибудь с веб-мордой...

Я написал небольшую статейку о том, как можно поставить один веб-сервер на внешку и ходить во все веб-морды через него(то есть, требуется только один проброшеный порт).

Статью опубликовал на ХабраХабре, ссылка на статью: http://habrahabr.ru/blogs/i_am_clever/50130/

Дублировать статью здесь смысла не вижу, так что просто даю ссылку. Метод описан под win32, но также легко переноситься на unix

angel_il
24-01-2009, 19:01
спасибо за хаутушку.

AndreyPopov
27-01-2009, 23:58
хочется сделать именно web cache - без всяких proxy и других ограничений - просто кэширование часто посещаемых сайтов желательно с автоматическим или по расписанию обновлением кэша.
squid подойдет для этого? или может что-то еще по-легче подойдет?

mixazen
28-01-2009, 04:46
Спасибо за описание.
Но, кто подскажет как настроить мой случай?

Имеется: wl500GP V2 (192.168.1.9)- прошивка Олега .10последняя
есть АДСЛ модем HUAWEY (192.168.1.1)
создан аккаунт на dyndns.org
клиент в wl500 прописан - при попытке зайти на mixazen.dyndns.org
я вхожу в веб-интерфейс модема 192.168.1.1

ВОПРОС: Как научить ходить заходить на 192.168.1.9:8081/rtorrent
192.168.1.9:8081/vnstat ...???
Под роутером стоит nginx - но сколько пытался разобраться с вирт.серверами - нечего не происходит - где ковырять?

angel_il
28-01-2009, 06:32
Спасибо за описание.
Но, кто подскажет как настроить мой случай?

Имеется: wl500GP V2 (192.168.1.9)- прошивка Олега .10последняя
есть АДСЛ модем HUAWEY (192.168.1.1)
создан аккаунт на dyndns.org
клиент в wl500 прописан - при попытке зайти на mixazen.dyndns.org
я вхожу в веб-интерфейс модема 192.168.1.1

ВОПРОС: Как научить ходить заходить на 192.168.1.9:8081/rtorrent
192.168.1.9:8081/vnstat ...???
Под роутером стоит nginx - но сколько пытался разобраться с вирт.серверами - нечего не происходит - где ковырять?

на HUAWEY сделать проброс нужных портов на 192.168.1.9

vectorm
28-01-2009, 14:33
хочется сделать именно web cache - без всяких proxy и других ограничений - просто кэширование часто посещаемых сайтов желательно с автоматическим или по расписанию обновлением кэша.
squid подойдет для этого? или может что-то еще по-легче подойдет?
Посмотри nginx, он специально под работу прокси заточен.

AndreyPopov
28-01-2009, 14:45
Посмотри nginx, он специально под работу прокси заточен.

да мне как раз не проски, а именно только web cache интересует.

а после предыдущего поста, когда действительно скорость чтения по USB даже с винта ограничена, и ответ на запрос может прийти быстрее чем считаться с винта - то наверное web cache на роутере действительно "овчинка выделки не стоит"!

Nebulosa
29-01-2009, 12:48
Очередное обновление: Nginx 0.7.32
Список изменений http://sysoev.ru/nginx/changes.html значителен. :)

XakeR
14-02-2009, 04:18
Доброго времени суток.
Есть роутер asus wl-500g Premium+олеговская прошивка+ППТП.
Есть локальная сеть и интернет в ней по впн.

Вопрос: Как зделать так что при конекте на мой айпи (роутера на 80 порт), отображался интернет сайт конкретный,т.е. поднять локальную версию сайта для пользователей.

Очень нужна ваша помощь. Третьи сутки не сплю...

Power
15-02-2009, 01:17
Не очень понятно, вы хотите свой сайт на роутере поднять или сделать, чтобы при заходе на роутер отображался чужой сайт...

XakeR
15-02-2009, 01:42
Не очень понятно, вы хотите свой сайт на роутере поднять или сделать, чтобы при заходе на роутер отображался чужой сайт...

Я хочу чтоб другие пользователи сети у которых нет интернета, при заходе по 80-му порту на мой айпи(в сети) имели доступ к однму сайту в интернете.

bmenee
15-02-2009, 04:38
Проксирование можно организовать с помощью nginx, но вообще это будет достаточно большой объем работы. И что бы всё это работало все картинки, css и javascript должны быть указаны в коде страниц в виде относительных путей (и быть на одном домене), иначе всё это будет грузиться из интернета напрямую.

XakeR
15-02-2009, 17:08
Проксирование можно организовать с помощью nginx, но вообще это будет достаточно большой объем работы. И что бы всё это работало все картинки, css и javascript должны быть указаны в коде страниц в виде относительных путей (и быть на одном домене), иначе всё это будет грузиться из интернета напрямую.

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

bmenee
15-02-2009, 18:13
я имею ввиду что если в коде странички написано <img src="http://wl500g.info/images/icons/icon7.gif"> то такие элементы будут загружаться из интернета а не через ваш компьютер

XakeR
15-02-2009, 22:41
Блин ну что нельзя зделать, чтоб у меня в сети люди набрали мой айпи (http://10.5.0.23/), а у них грузился www.sait.in.ua. Данный роутер я думаю так можно настроить. На роутере интернет по PPTP.
Хелп (((

Danya0w
17-02-2009, 11:38
Блин ну что нельзя зделать, чтоб у меня в сети люди набрали мой айпи (http://10.5.0.23/), а у них грузился www.sait.in.ua. Данный роутер я думаю так можно настроить. На роутере интернет по PPTP.
Хелп (((

XakeR, тебе достаточно /etc/hosts подредактировать, добавив соответствующую запись

XakeR
17-02-2009, 22:28
XakeR, тебе достаточно /etc/hosts подредактировать, добавив соответствующую запись

можеш пошагово расписать я в никсх нюб

Markiz
18-02-2009, 06:22
Вопервых запись в хостс не поможет. Перед тем как советовать внимательно прочитайте что нужно. Автору нужно дать юзерам из локалки провайдера к сайту в инете. Тоесть они (юзеры из внешней локалки, из wan) обращаются к роутеру на 80 порт а получают сайт из инета.

Во вторых. Уважаемый автор. Ответ вам уже дан, и даже указаны проблемы с которыми вам придется столкнуться. Если вам лень погуглить "прокси" и "nginx" и понять что это такое, а заодно и понять посты bmenee, то это ваша личная проблема, и идите с ней в суд по правам человека. Хотите "разжеванное" решение с инструкцией "по пунктам" то это стоит денег, и из энтузиазма никто ничего не напишет.

А "бесплатный совет" вам дали. И очень хороший. Задавайте еще конкретные вопросы и вам ответят.

А вы, автор, тупо ленитесь. Ведь в посты про прокси даже не захотели вникать, зато за призрачный шанс что-то исправить "просто добавив запись" сразу зацепились, понадеявшись на легкое решение.

Учитывая уровень вашей подготовленности (невозможность самостоятельно дописать строчку в текстовый файл) я думаю для вас это непосильная задача.

Я бы, если бы был модератором, таких "новичков" которым объясни, инструкцию напиши, а потом и еще и список команд для копи-паста банил бы до прочтения основных веток форума.

stan
18-02-2009, 10:11
...

Сказал, как отрезал! =b :cool:

Danya0w
19-02-2009, 13:58
Вопервых запись в хостс не поможет. Перед тем как советовать внимательно прочитайте что нужно. Автору нужно дать юзерам из локалки провайдера к сайту в инете. Тоесть они (юзеры из внешней локалки, из wan) обращаются к роутеру на 80 порт а получают сайт из инета.
в данном случае извиняюсь - неправильно понял вопрос автора.
посему есть отмазка: у меня на роутере крутится собственный сайт (в подписи) и он доступен как локально, так и извне.

StaREViL
19-02-2009, 15:31
в данном случае извиняюсь - неправильно понял вопрос автора.
посему есть отмазка: у меня на роутере крутится собственный сайт (в подписи) и он доступен как локально, так и извне.

2-ой день пытаюсь зайти на него=)) Толку ноль.

Power
19-02-2009, 15:56
2-ой день пытаюсь зайти на него=)) Толку ноль.

Плюс один. Пинг идёт, а ответа с 80 порта нет вообще. Хе-хе.

Danya0w
20-02-2009, 21:09
походу post-firewall обновил и не ребутнул. ща сделаю... :-[
пробуйте - чьи провайдеры DNS-ки быстрее обновят.
у человека с другого конца города уже обновились.

Nebulosa
03-04-2009, 17:20
Давно заметил, а сегодня перепроверил - новые версии nginx ставятся и работают прямо из репазитория. Как что не знаю, но я пожалуй, больше не буду пересобирать новые версии, ставьте смело напрямую - ipkg install nginx.

Спасибо за внимание. :)

flashnik86
05-01-2010, 00:55
Сразу оговорюсь, что пока использую родную прошивку и думаю о смысле миграции на развиваемую здесь. Насколько я понимаю, у многих ваным аргументом является поддержка данной прошивкой VPN и pptp соединений, через которые подключают многие провайдеры. У меня подключение идет через локальную сеть, так что такого аргумента у меня нет :)

В оригинальной прошивке есть такая удобная функция, как виртуальный сервер. Почитал сегодня про всякие nginx и возник вопрос: как работает эта проброска?
Насколько я понял, nginx (или лайти) при проброске другому серверу держит соединение у себя открытым до тех пор, пока ему не придет сообщение от внутреннего. А как здесь реализована эта функциональность? Тоже все соединения открыты до тех пор, пока изнутри не придет ответ?

В случае применения Вашей прошивки, если я правильно понимаю, подобного готового софта не идет и надо ставить Nginx, lighttpd или Apache. Или тут я неправ? Если в прошивке "от Олега" идет подобная функциональность, то как она реализована?

lf1
05-01-2010, 01:21
В оригинальной прошивке есть такая удобная функция, как виртуальный сервер. Почитал сегодня про всякие nginx и возник вопрос: как работает эта проброска?
Насколько я понял, nginx (или лайти) при проброске другому серверу держит соединение у себя открытым до тех пор, пока ему не придет сообщение от внутреннего. А как здесь реализована эта функциональность? Тоже все соединения открыты до тех пор, пока изнутри не придет ответ?

В случае применения Вашей прошивки, если я правильно понимаю, подобного готового софта не идет и надо ставить Nginx, lighttpd или Apache. Или тут я неправ? Если в прошивке "от Олега" идет подобная функциональность, то как она реализована?
"Виртуальный сервер" в данном контексте - не более чем обыкновенный проброс портов, реализуется напрямую на iptables, как в оригинальной, так и в кастомной прошивке. Ничего более сложного штатно нет.

flashnik86
05-01-2010, 01:33
"Виртуальный сервер" в данном контексте - не более чем обыкновенный проброс портов, реализуется напрямую на iptables, как в оригинальной, так и в кастомной прошивке. Ничего более сложного штатно нет.

Т.е. пакет просто пересылается внутрь, никакие соединения не открываются, так?

PS. Я в этом новичок :(

djony555
05-02-2010, 10:42
доброго времени суток есть ASUS WL-500gP V2
задача: создать на нем несколько несколько виртуальных интерфейсов
для маршрутизации по принадлежности пакета.
т.е приходит на ваш внешний IP пакет с какого то купленного доменного имени, ВАША железка обрабатывает пакет и адресует компьютеру, который стоит за железкой на apache поднятый на виртуальной машине

цель: поднять несколько сайтов на компе, чтобы маршрутизатор прокидывал каждому сайту свои пакеты, понимаю что для этого надо несколько внешних адресов (столько же сколько сайтов будет создаваться)

если есть какие либо мысли или выводы буду благодарен, только конкретизируйте ваши ответы, где и в каком файле и как писать.

vectorm
05-02-2010, 12:04
доброго времени суток есть ASUS WL-500gP V2
задача: создать на нем несколько несколько виртуальных интерфейсов
для маршрутизации по принадлежности пакета.
т.е приходит на ваш внешний IP пакет с какого то купленного доменного имени, ВАША железка обрабатывает пакет и адресует компьютеру, который стоит за железкой на apache поднятый на виртуальной машине

цель: поднять несколько сайтов на компе, чтобы маршрутизатор прокидывал каждому сайту свои пакеты, понимаю что для этого надо несколько внешних адресов (столько же сколько сайтов будет создаваться)

если есть какие либо мысли или выводы буду благодарен, только конкретизируйте ваши ответы, где и в каком файле и как писать.
Основной вопрос: ЗАЧЕМ???
Разве нельзя тупо прокинуть 80 порт на комп, а уж Апач (или что там у Вас) пусть сам разбирается по доменным именам.И роутеру будет легче, и ответы будут быстрее.
В качестве саморекламы: nesudba.net (страничка на виртуалке внутри локалки, проброс 80 порта на софтовом роутере).

Basile
05-02-2010, 12:38
Я думаю, что автор топика говорил о схеме предложенной здесь Новогодний подарок хостерам: Как разместить на сервере 10000 клиентов или даже больше / Хостинг / Хабрахабр (http://habrahabr.ru/blogs/hosting/79774/), только реализовать все в железе. Сразу скажу, что nginx можно запустить на роутере, но я не подскажу вам как его сконфигурировать (может эта статья поможет: nginx + apache. Кеширование / Высокая производительность / Хабрахабр (http://habrahabr.ru/blogs/hi/79876/), лучше поискать там (http://habrahabr.ru)), и предупрежу, что мощности ASUS WL-500gP V2 может не хватить

djony555
06-02-2010, 20:46
Основной вопрос: ЗАЧЕМ???
Разве нельзя тупо прокинуть 80 порт на комп, а уж Апач (или что там у Вас) пусть сам разбирается по доменным именам.И роутеру будет легче, и ответы будут быстрее.
В качестве саморекламы: nesudba.net (страничка на виртуалке внутри локалки, проброс 80 порта на софтовом роутере).

а если сайтов будет несколько?! , как узнать кому какой пакет адресовывать?
простой пример вы зарегили у провайдера 2 доменных имени:
123.124.125.126 за www.sait1.ru
201.202.203.204 за www.sait2.ru
за вашим маршрутизатором тот самый комп, на нём несколько виртуалок с апачем, (это чтобы у всех сайтов был 80 порт по умолчанию)
кто-то набирает www.sait1.ru вам идёт пакет на ваш внешник, как роутру понять на какой сайт ему отправить запрос чтобы вывелся именно тот который нужен?!
как прикрутить ещё один IP, чтобы роутэр знал что именно по этому IP - этот сайт.
поэтому я и думаю что нужны виртуальные интерфейсы.
иначе все запросы будь то sait1.ru или sait2.ru будут сыпаться на один и тот же IP.

vectorm
07-02-2010, 09:18
а если сайтов будет несколько?! , как узнать кому какой пакет адресовывать?
простой пример вы зарегили у провайдера 2 доменных имени:
123.124.125.126 за www.sait1.ru
201.202.203.204 за www.sait2.ru
за вашим маршрутизатором тот самый комп, на нём несколько виртуалок с апачем, (это чтобы у всех сайтов был 80 порт по умолчанию)
кто-то набирает www.sait1.ru вам идёт пакет на ваш внешник, как роутру понять на какой сайт ему отправить запрос чтобы вывелся именно тот который нужен?!
как прикрутить ещё один IP, чтобы роутэр знал что именно по этому IP - этот сайт.
поэтому я и думаю что нужны виртуальные интерфейсы.
иначе все запросы будь то sait1.ru или sait2.ru будут сыпаться на один и тот же IP.
1. Вы для начала отделите мух от котлет: несколько IP на одном интерфейсе - это одно, а несколько сайтов на одном IP - это другое.
2. Зря Вы так думаете, если бы Вы внимательно ознакомились с мануалами по Апачу или nginx, то увидели бы, что веб сервер в состоянии разобрать сам, какой сайт ему показывать по какому запросу.

Тему считаю полным офтопиком, при продолжении вопросов о повторном изобретении велосипеда, тему закрою.

djony555
09-02-2010, 08:38
1. Вы для начала отделите мух от котлет: несколько IP на одном интерфейсе - это одно, а несколько сайтов на одном IP - это другое.
2. Зря Вы так думаете, если бы Вы внимательно ознакомились с мануалами по Апачу или nginx, то увидели бы, что веб сервер в состоянии разобрать сам, какой сайт ему показывать по какому запросу.

Тему считаю полным офтопиком, при продолжении вопросов о повторном изобретении велосипеда, тему закрою.

изначально я спрашивал про несколько IP на одном интерфейсе.
и мне нужен конкретный ответ как это сделать и что и в каком файле прописать.

checat
09-02-2010, 12:58
изначально я спрашивал про несколько IP на одном интерфейсе.
и мне нужен конкретный ответ как это сделать и что и в каком файле прописать.

Это называется IP alias
http://www.faqs.org/docs/Linux-mini/IP-Alias.html

Будет ли это работать нормально с учётом маскарада на основном WAN интерфейсе, ответить затрудняюсь.

vectorm
09-02-2010, 14:16
Это называется IP alias
http://www.faqs.org/docs/Linux-mini/IP-Alias.html

Будет ли это работать нормально с учётом маскарада на основном WAN интерфейсе, ответить затрудняюсь.
Это все хорошо для одной подсети.
Для разных IP подсетей, но в одном WAN кабеле - используются тегированные vlan.
Если есть 2 внешних IP адреса в разных подсетях, висящие на разных интерфейсах - читаем мой второй ответ, п.2.

Автору топика: каков вопрос, таков и ответ. Хотите конкретный ответ, без умозаключений - давайте больше исходных данных.

coolmiha
09-03-2010, 17:14
Dir-320
Прошивка Олега, прошивка 1.9.2.7-d-r1000
Стал падать неуверенно работать связка nginx+php-fcgi
В post-mount стоит
/opt/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u nobody -g nobody -f /opt/bin/php-fcgi -P /var/run/fastcgi-p
hp.pid, и этот процесс периодически падал. Сегодня он перестал запускаться вречную, в логах чисто.
Что может быть?
$ipkg list_installed |grep php
php - 5.2.10-3 -
php-fcgi - 5.2.10-3 -

ipkg list_installed |grep lighttp
lighttpd - 1.4.23-1 -

SkyDevil
09-03-2010, 17:21
Не берусь сказать точно, но скорее всего проблема в php-fcgi, он крайне нестабилен и периодически слетает в дифункт (зомби мод).

coolmiha
09-03-2010, 17:26
Обновил php, теперь он падает в Segmentation fault
;(((
И php-fcgi тоже.

SkyDevil
09-03-2010, 19:45
Обновил php, теперь он падает в Segmentation fault
;(((
И php-fcgi тоже.
ловил я такие ошибки, попробуй диск проверить на ошибки, и еще помогало, не надолго, полное переустановка программ (с форматированием винта). Попробуй еще поставить отсюда сразу набором http://wl500g.info/showthread.php?t=21889

bak
27-03-2010, 07:44
В таком варианте веб интерфейс будет работать неправильно, и при нажатии кнопкуи Aply или Finish изменения не будут применятся (или будут, но через открытое соединение). Для того чтобы веб интерфейс работал правильно, необходимо осуществлять подмену возвращаемых ссылок http:// на https://. Для этого необходимо собрать nginx с поддержкой модуля http_sub_module (и не забыть ssl).

./configure --with-http_ssl_module --with-http_sub_module
Затем в конфиге, в разделе location прописать:

sub_filter http:// https://;
sub_filter_once on;
Подправьте howto плиз.

mirovic
28-05-2010, 05:14
Эт хорошо что nginx теперь есть в репозитарии. Но почему то я немогу прикрутить php-fcgi к этому вебсерверу. Кто нибудь проделывал такое? php-fcgi нужен для поддержки веб-интерфейса rutorrent с плагином rpc. Прошу скинуть конфиги php и nginx.

vectorm
28-05-2010, 06:53
Эт хорошо что nginx теперь есть в репозитарии. Но почему то я немогу прикрутить php-fcgi к этому вебсерверу. Кто нибудь проделывал такое? php-fcgi нужен для поддержки веб-интерфейса rutorrent с плагином rpc. Прошу скинуть конфиги php и nginx.
А поискать самому????
Вот часть моей переписки с SERGi по этому поводу:
Почитать здесь например:
http://snifer.ru/114-nginx-php-polnaya-nastrojka.html
упомянут модуль spawn-fcgi из комплекта Lighttpd.
А так же:
http://www.lexa.ru/nginx-ru/msg25343.html
http://libtorrent.rakshasa.no/wiki/TracFastCgi
php с rtorrent общается через scgi, а не через fastcgi
В Убунте можно посмотреть пакеты:
apt-cache search nginx scgi
Вот здесь написано как включить:
http://wiki.nginx.org/NginxNgxSCGIModule
а вот его уже натравить на требуемый порт, указанный в rtorrent-е.
Чтобы nginx работал с scgi, его надо СОБРАТЬ с этим модулем, по умолчанию он собран без scgi.
Инструкция по сборке mod_scgi есть здесь:
http://wiki.nginx.org/NginxNgxWSGIModule
Для работы rtorrent и nginx вообще не нужен php ( ну и fast-cgi тоже), он только нужен для работы веб морды.
scgi создает виртуальную веб директорию /RPC2 в nginx, и отдает туда все инфу от rtorrent.
Посмотреть как конфиг Lighttpd сформирован в этом месте, и отталкиваться от него.

stn
26-07-2011, 17:43
Здравствуйте!

Помогите! Очень нужен Nginx, собранный вместе с Openssl версии 0.9.8j и старше (для создания нескольких виртуальных SSL хостов, используя SSL/TLS SNI).

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

Angel Destroyer
09-11-2011, 19:34
Здравствуйте!
Стоит Nginx 0.8.54. Добавляю:



location /pl/ {
autoindex on;
}

Перезапускаю nginx - ошибок не находит, стартует, а в http://site/pl ничего не видит и выдает 404.
В логах пишет, что не может найти .html. Такое впечатление что "autoindex" вообще не замечает.
Как можно побороть?

qwest
17-11-2011, 09:15
глюков пока не видел.

Инструкцией по настройке nginx + php на wl500gv2 поделитесь?

GUID
27-11-2011, 20:32
Статью опубликовал на ХабраХабре, ссылка на статью: http://habrahabr.ru/blogs/i_am_clever/50130/
Дублировать статью здесь смысла не вижу, так что просто даю ссылку. Метод описан под win32, но также легко переноситься на unix
"...долго приглашал в гости, но адреса так и не оставил..." (с) не знаю кто.
Вопрос к тем, кто читал. Я правильно подозреваю, что метод заключается в следующем:
1. На компе, откуда заходим, правим hosts:
- torrent.local 82.82.82.82
- vnstat.local 82.82.82.82
2. в конфиге nginx на роуторе прописываем для какого имени, откуда брать контект.
Да?

crashX
06-12-2011, 07:36
доброго времени суток.
у меня на RT-N16 установлен nginx и висит он на 8082 порту, для локального использования. для внешки сделан проброс на 80 порт. все работает. но вот незадача, если попытаться зайти из внешки в любую директорию на http://my_ip/any_dir, то соединения не происходит и в строке адреса появляется внутрений порт (http://my_ip:8082/any_dir). если убрать порт - все работает как и должно. вопрос в том, как сделать чтобы внутренний порт не появлялся в строке.
заранее благодарен.

YVM
07-12-2011, 10:13
как сделать чтобы внутренний порт не появлялся в строке.
заранее благодарен.

У меня сделано наоборот, возможно Вам подойдет.
В зонах bind прописать адреса xxx.yoursite.net
В конфиге nginx перенаправления на внутрисетевые ip с различными портами и на разных компах в сети. Не только http. Например, у меня по адресу gate.mysite.net:80 вообще прокси сервер с внутрисетевым портом 3128. При этом внешний пользователь никаких внутренних портов не видит.

MercuryV
17-07-2012, 23:42
С радостью сообщаю, что в репозитории Entware (http://wl500g.info/showthread.php?28036-%CF%E5%F0%E5%F5%EE%E4-%ED%E0-%ED%EE%E2%FB%E9-%F0%E5%EF%EE%E7%E8%F2%EE%F0%E8%E9-Entware-%F1-Optware) сейчас есть свежий Nginx 1.2.2, поддержка SSL включена, для howto (http://wl500g.info/showthread.php?17201-howto-%C8%F1%EF%EE%EB%FC%E7%EE%E2%E0%ED%E8%E5-%E2%E5%E1%F1%E5%F0%E2%E5%F0%E0-nginx-(SSL)-%E4%EB%FF-%E4%EE%F1%F2%F3%EF%E0-%EA-%E2%F1%F2%F0%EE%E5%ED%ED%EE%EC%F3-%E2%E5%E1-%E8%ED%F2%E5%F0%F4%E5%E9%F1%F3) из первого сообщения топика подходит.

yuoras
14-07-2013, 20:10
Возможно ли на одном сервере nginx организовать работу web странички и обновление NOD32 ?.
web висит на http://******.ru
Обновление NOD32 http://******.ru:2221

Пробовал указывать две секции, как описанно тут http://xaxatyxa.ru/_web/nastroyka-podderzhki-neskolkih-saytov-domenov-nginx.html не получается.

Может кто то растолкует?.

Заранее благодарен!!