The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Связка apache - nginx на сайте в качестве прокси, !*! Magi, 31-Май-14, 03:25  [смотреть все]
Здравствуйте!
Подскажите пожалуйста, на сайте domain.ru с ip 1.1.1.1 стоял apache 2.2 и в конфиге были такие строки

ProxyRequests On
ProxyVia Block
AllowCONNECT 21 25 110 443 22 554 563 5190 1080 8080 5140 5160 4000 1478 1479 1480 8008 1480>

<Proxy *>
  Order deny,allow
  deny from all
  allow from xxx.xx.xx.xx
</Proxy>

Апач работал, как прокси. Но возникла необходимость поставить nginx.
# user nginx;
worker_processes  4;
timer_resolution 100ms;

# error_log  /dev/null;
error_log  /usr/local/nginx/logs/error.log  crit;
#pid        logs/nginx.pid;
worker_rlimit_nofile 200000;
worker_priority -5;
events { worker_connections  4000;

multi_accept on; }
http { include       mime.types; default_type  application/octet-stream;
types { text/plain    data;  }
    log_format  main  '$remote_addr - $remote_user [$time_local] $host $request
'
                      '"$status" $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_src_client_ip"';

#access_log /usr/local/nginx/logs/access.log  main;
access_log off;

# Caches information about open FDs, freqently accessed files.
open_file_cache max=200000 inactive=20s;
open_file_cache_valid 30s;
open_file_cache_min_uses 2;
open_file_cache_errors on;


    sendfile        on;
    tcp_nopush     on;
    tcp_nodelay    on;
    
    gzip           on;
    gzip_min_length 10240;
    gzip_buffers 64 8k;
    gzip_comp_level 3;
    gzip_http_version 1.1;
    gzip_proxied expired no-cache no-store private auth;
    gzip_types text/plan application/xml application/x-javascript text/css text/xml text/javascript;
    gzip_disable "msie6";
    client_body_timeout 10;
    client_header_timeout 10;
    send_timeout 2;
    
    keepalive_timeout  30;
    keepalive_requests 1000;
    
    server_tokens off;
    server_names_hash_bucket_size 64;
    proxy_buffers     100 64k;
    proxy_read_timeout 300;
    proxy_send_timeout 300;
    client_max_body_size 1500m;
    reset_timedout_connection on;

proxy_cache_path /var/cache/nginx/cache levels=1:2 keys_zone=one:16m inactive=7d max_size=1024m;
proxy_temp_path /var/cache/nginx/temp;

server {
      listen       *:80;
      server_name   *.com;
location /nginx_status { stub_status on; access_log off; allow 1.1.1.1; deny all; }
location /munin { alias   /var/www/html/munin; autoindex on; auth_basic "Munin"; auth_basic_user_file /etc/munin/munin-htpasswd; }
      location / {
            proxy_pass        http://1.1.1.1:8181;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Real-IP $remote_addr;
      }

}

server {
      listen       *:80;
      server_name   www.domain.ru domain.ru;
location /nginx_status { stub_status on; access_log off; allow 1.1.1.1; deny all; }
location /munin { alias   /var/www/html/munin; autoindex on; auth_basic "Munin"; auth_basic_user_file /etc/munin/munin-htpasswd; }
# proxy_temp_path /var/cache/nginx/domain.ru;

location / {
#            $host='domain.ru:80'
            proxy_pass http://1.1.1.1:80;
            proxy_set_header Host domain.ru;
        proxy_redirect off;
}
        
# location /administrator {
location ~*(administrator|comprofiler)* {
         proxy_cache off;
         proxy_pass        http://1.1.1.1:8181;
         proxy_set_header Host $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         proxy_set_header X-Real-IP $remote_addr;

}

}
}


Теперь прокси перестал работать.
Ранее на голом апаче с помощью настроек выше можно было использовать адрес сайта и 80 порт в качестве прокси, указав его в настройках браузера. Для повышения производительности был добавлен nginx, но функционал прокси отвалился. Сейчас нужно его вернуть. На сервере открыт только 80 и 22 порты, других не будет. Подскажите, как вернуть функционал прокси?

  • Связка apache - nginx на сайте в качестве прокси, !*! PavelR, 09:04 , 31-Май-14 (1)
    • Связка apache - nginx на сайте в качестве прокси, !*! Magi, 09:07 , 31-Май-14 (2)
      >[оверквотинг удален]
      >> браузера.
      > .....
      >> функционал прокси отвалился.
      > .....
      >> Сейчас нужно его вернуть. Подскажите, как вернуть функционал прокси?
      > .....
      > Технически это частично можно сделать и на nginx, далеко не в том
      > объеме, как это было сделано на apache - метод CONNECT сделать
      > невозможно, а только браузинг вас не устроит.
      > Рекомендую хороший вариант: никак. Ищите другие пути, возможно они есть.

      Для начала устроил бы и браузинг. Подскажите, как?

      • Связка apache - nginx на сайте в качестве прокси, !*! PavelR, 20:07 , 01-Июн-14 (3)
        • Связка apache - nginx на сайте в качестве прокси, !*! Magi, 11:30 , 17-Июн-14 (4) –1
          >[оверквотинг удален]
          >>> .....
          >>>> Сейчас нужно его вернуть. Подскажите, как вернуть функционал прокси?
          >>> .....
          >>> Технически это частично можно сделать и на nginx, далеко не в том
          >>> объеме, как это было сделано на apache - метод CONNECT сделать
          >>> невозможно, а только браузинг вас не устроит.
          >>> Рекомендую хороший вариант: никак. Ищите другие пути, возможно они есть.
          >> Для начала устроил бы и браузинг. Подскажите, как?
          > Ну как там дела? В гугле не забанили? Нет? Ну тогда ладно:
          > google://nginx%20forward%20proxy

          К сожалению гугл не помог. Работоспособной конфигурации добиться не удалось. Браузер через прокси показывает, что запрашиваемый урл на сайте не найдет. Т.е. нужно, чтобы и сайт работал и через него можно было бы в инет ходить. Подскажите советом пожалуйста.

          • Связка apache - nginx на сайте в качестве прокси, !*! PavelR, 12:15 , 17-Июн-14 (5)
            • Связка apache - nginx на сайте в качестве прокси, !*! Magi, 13:05 , 17-Июн-14 (6)
              >[оверквотинг удален]
              >>>>> Рекомендую хороший вариант: никак. Ищите другие пути, возможно они есть.
              >>>> Для начала устроил бы и браузинг. Подскажите, как?
              >>> Ну как там дела? В гугле не забанили? Нет? Ну тогда ладно:
              >>> google://nginx%20forward%20proxy
              >> К сожалению гугл не помог. Работоспособной конфигурации добиться не удалось. Браузер через
              >> прокси показывает, что запрашиваемый урл на сайте не найдет. Т.е. нужно,
              >> чтобы и сайт работал и через него можно было бы в
              >> инет ходить. Подскажите советом пожалуйста.
              > как был сконфигурирован nginx для достижения вашей цели? Приведите конфиг (блока server
              > будет достаточно).

              server {
                    listen       *:80;
                    server_name   *.com;
              location /nginx_status { stub_status on; access_log off; allow serverip; deny all; }
              location /munin { alias   /var/www/html/munin; autoindex on; auth_basic "Munin"; auth_basic_user_file /etc/munin/munin-htpasswd; }
                    location / {
                          proxy_pass        http://serverip:8181/;
                          proxy_set_header Host $host;
                          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                          proxy_set_header X-Real-IP $remote_addr;
                    }

              }

              server {
                    listen       *:80;
                    server_name   www.domain.ru domain.ru;
              location /nginx_status { stub_status on; access_log off; allow serverip; deny all; }
              location /munin { alias   /var/www/html/munin; autoindex on; auth_basic "Munin"; auth_basic_user_file /etc/munin/munin-htpasswd; }
              # proxy_temp_path /var/cache/nginx/domain.ru;

              location / {
                          proxy_pass        http://serverip:8181;
                          proxy_set_header Host $host;
                          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                          proxy_set_header X-Real-IP $remote_addr;
              proxy_cache one;
              proxy_cache_key "$request_method|$is_args|$host|$request_uri";
              proxy_hide_header "Set-Cookie";
              proxy_ignore_headers "Cache-Control" "Expires" "Set-Cookie" "X-Accel-Expires" "X-Accel-Redirect";
              # proxy_ignore_headers "Cache-Control" "Expires" "X-Accel-Expires" "X-Accel-Redirect";
              proxy_cache_valid  200 302  10m;
              proxy_cache_valid  404      1m;
              proxy_cache_valid  any 10s;
              proxy_cache_use_stale http_502 http_503 http_504;
              proxy_cache_bypass $cookie_session $http_x_update;
              proxy_pass $scheme://$http_host$url$is_args$args;

              }

              • Связка apache - nginx на сайте в качестве прокси, !*! PavelR, 16:54 , 17-Июн-14 (7)
                • Связка apache - nginx на сайте в качестве прокси, !*! Magi, 17:24 , 17-Июн-14 (8)
                  > Увы, если "гугл не помог", то и мне помочь нечем.

                  А зачем тогда нужен был конфиг?
                  Я нашел пример и попробовал применить его, но не вышло.

                  • Связка apache - nginx на сайте в качестве прокси, !*! PavelR, 23:55 , 17-Июн-14 (9)
                    • Связка apache - nginx на сайте в качестве прокси, !*! Magi, 13:47 , 18-Июн-14 (10)
                      >> А зачем тогда нужен был конфиг?
                      >> Я нашел пример и попробовал применить его, но не вышло.
                      > В приведенном конфиге я не вижу подходящего под исходный вопрос "найденного примера",
                      > либо "пример" найден "неверно".

                      Был найден вот этот пример http://plonexp.leocorn.com/leocornus/leocornus.buildout.cfgr...

                      А из него взята вот эта строчка
                      proxy_pass $scheme://$http_host$uri$is_args$args;

                      • Связка apache - nginx на сайте в качестве прокси, !*! PavelR, 16:15 , 18-Июн-14 (11)
                        • Связка apache - nginx на сайте в качестве прокси, !*! Magi, 16:28 , 18-Июн-14 (12) –1
                          >> Был найден вот этот пример http://plonexp.leocorn.com/leocornus/leocornus.buildout.cfgr...
                          > Да, пример найден верно.
                          >> А из него взята вот эта строчка
                          >> proxy_pass $scheme://$http_host$uri$is_args$args;
                          > Круто. Целая строчка.

                          Если этого мало, то просто подскажите что я сделал не так?

                        • Связка apache - nginx на сайте в качестве прокси, !*! PavelR, 20:07 , 18-Июн-14 (13)
                        • Связка apache - nginx на сайте в качестве прокси, !*! Magi, 22:07 , 18-Июн-14 (14)
                          >[оверквотинг удален]
                          > Не пользуетесь [.censored.]
                          > Есть пример по ссылке, который вы нашли. Отлично.
                          > В примере есть некоторое количество строк. Вы взяли _одну_.
                          > Почему вы взяли именно одну эту строчку, почему не взяли какую-то другую,
                          > или, например, две строки вместо одной?
                          > Вы детально разобрались с каждой строкой конфига в примере и можете _решать_,
                          > что нужно, а что нет? Увы, это не так.
                          > Возьмите конфиг из примера целиком. Только конфиг из примера, других секций server
                          > быть не должно. Протестируйте. Получится-не получится... По результатам тестов думайте
                          > дальше.

                          Потому что экспериментировать на работающем сайте не хочется, а тестового нет.
                          Взял одну, потому что другие аналогичные уже есть в конфиге.
                          Вам так трудно подсказать?

                        • Связка apache - nginx на сайте в качестве прокси, !*! PavelR, 22:30 , 18-Июн-14 (15)
                        • Связка apache - nginx на сайте в качестве прокси, !*! Magi, 22:35 , 18-Июн-14 (16)
                          >> Потому что экспериментировать на работающем сайте не хочется, а тестового нет.
                          > Да, это край как сложно, организовать тестовый сайт.
                          > Вы знаете, есть такие штуки, VPS называются, за пару сотен рублей в
                          > месяц можно найти вообще приличные ресурсы и выделенный IP. Может быть
                          > тогда и воровать трафик через чужой сайт не нужно будет?

                          Как мне нравятся люди, которые все про всех знают! Вы отвечаете за свои слова?
                          Я кажется писал, что сайт мой.

                          >> Взял одну, потому что другие аналогичные уже есть в конфиге.
                          > Как-то не заметно "других аналогичных". Иногда вообще не видно "других", иногда они
                          > _не аналогичны_.
                          >> Вам так трудно подсказать?
                          > А оно мне сильно надо, если не надо вам?

                          Думаю больше не о чем разговаривать. Не понимаю, зачем вы вообще в этой теме отвечали...

                        • Связка apache - nginx на сайте в качестве прокси, !*! PavelR, 01:03 , 19-Июн-14 (17)
                        • Связка apache - nginx на сайте в качестве прокси, !*! Magi, 08:40 , 19-Июн-14 (18)
                          >[оверквотинг удален]
                          > не дозволено договоренностью, что есть суть написанное выше. Я не могу
                          > себе представить иной ситуации, в которой бы потребовалось сделать описанное вами
                          > именно так и только так, как вы хотите сделать.
                          > Если сайт действительно ваш и вам дозволяется размещать там "любые иные сервисы"
                          > и разрешено качать через хост любой трафик - тогда всего лишь
                          > откройте файрволл - решите организационную проблему организационными, а не техническими,
                          > методами.
                          > Этого добиться не сложно, если это не запрещено.
                          > За три месяца можно было найти кучу решений вашей реальной задачи. Организационных,технических,
                          > финансовых. Но вы не осилили, увы. И это впечатляет.

                          Файрволл находится на другом сервере и изменение его настроек невозможно.

                          PS. Попросил помощи... Такого неадеквата в сети еще не видел. Не хотите помогать - промолчите. Хотели показать свое превосходство? Не получилось. В гугл любой послать может, дельный совет - не каждый.

                        • Связка apache - nginx на сайте в качестве прокси, !*! PavelR, 09:42 , 19-Июн-14 (19)



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру