Назад | Перейти на главную страницу

Обратный прокси с кальмаром

Я пытаюсь настроить обратный прокси-сервер, чтобы в моей сети было несколько веб-серверов.

У меня сейчас 2 сервера:

10.0.0.45 - New Server Webserver/Squid Proxy
10.0.0.40 - Old Server Webserver

Мне удалось сделать так, чтобы весь трафик на порт 1234 на новом сервере (10.0.0.45) отправлялся на 80 на старом сервере (10.0.0.40). но теперь у меня проблемы при попытке перенаправить домены.

Я хочу пересылать вот так:

*.arcath.net -> 10.0.0.40
londinium.arcath.net -> 10.0.0.45
support.ed-itsolutions.com -> 10.0.0.40

Меня не слишком беспокоит, если мне придется вручную добавлять все поддомены вместо *.

Может ли кто-нибудь дать мне пример конфигурации для этого?

Мой squid.conf выглядит так:

http_port 1234 defaultsite=10.0.0.45:80
cache_peer 10.0.0.40 parent 80 0 no-query originserver name=whitefall
cache_peer_domain whitefall www.arcath.net blog.arcath.net .arcath.net
cache_peer 10.0.0.45 parent 80 0 no-query originserver name=londinium
cache_peer_domain londinium londinium.arcath.net

acl all src 0.0.0.0/0.0.0.0
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443          # https
acl SSL_ports port 563          # snews
acl SSL_ports port 873          # rsync
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl Safe_ports port 631         # cups
acl Safe_ports port 873         # rsync
acl Safe_ports port 901         # SWAT
acl web dstdomain 10.0.0.40
acl purge method PURGE
acl CONNECT method CONNECT

http_access allow all
http_access allow localhost

На данный момент все домены переходят на 10.0.0.45

Ниже приводится пример того, чего вы пытаетесь достичь: http://wiki.squid-cache.org/ConfigExamples/Reverse/MultipleWebservers

Пожалуйста, попробуйте вашу конфигурацию выше, изменив инструкцию по умолчанию на

http_port 1234 defaultsite=londinium.arcath.net

Согласно документации squid

defaultsite=domainname
        What to use for the Host: header if it is not present
        in a request. Determines what site (not origin server)
        accelerators should consider the default.
        Implies accel.

Если вы пытаетесь настроить прокси-сервер обратного кеша с балансировкой нагрузки ... пожалуйста, прочтите это перед дальнейшей настройкой squid. Если я неправильно понял ваши потребности, просто проигнорируйте этот пост.

http://varnish-cache.org/wiki/ArchitectNotes