On Tue, Feb 07, 2006 at 12:02:05AM +0200, Georgi Hristozov wrote: > Здравейте! Имам един проблем с Apache 2, вече го обсъждахме в един > форум, но още не мога да намеря решение. Едната от машините е с Windows, > но се надявам да няма флеймове, тъй като става дума за конфигурация на > Apache. Както и да е, имам следната конфигурация: > INTERNET <-> Windows box <-> Linux box > И на двете машини имам Apache 2 (на рутера е 2.0.55, на Linux машината е > 2.2.0). На Windows-ката имам следната конфигурация за reverse proxy: > > <VirtualHost *:80> > ServerAdmin [EMAIL PROTECTED] > ServerName daffy.zloba.ath.cx:80 > ServerAlias daffy mdk.wtf.la mdk > ProxyPass / http://192.168.0.2:80/ > ProxyPassReverse / http://192.168.0.2:80/ > ErrorLog logs/daffy/error.log > CustomLog logs/daffy/access.log combined > </VirtualHost> > > ProxyRequests Off > > Хубаво, всичко си се логва в logs/daffy/access.log на Windows-ката > машина. Но за другата машина (daffy), целият свят е с IP-то на рутера > пред нея. Та въпросът е как да накарам mod_proxy да изпраща в http > header-ите истинските IP-та на клиентите, а не това на рутера. Как ли не > се мъчих да ровя из документации, не съм сигурен дали не може да стане с > mod_rewrite, вече съвсем загубих надежда за директивите на mod_proxy.
Ако имаш предвид, че искаш да запазиш IP адреса в TCP/IP header-а, т.е. задният уебсървър да получава TCP връзка, която да изглежда като че ли си идва от истинския IP адрес, а не от IP адреса на рутера, това НЕ може да бъде направено с mod_proxy. Това, което mod_proxy прави, е просто да накара уебсървъра върху рутера да отвори нова, съвсем нормална, съвсем истинска TCP връзка до истинския уебсървър отзад - и тази съвсем нормална TCP връзка си има съвсем нормален изходящ (source) IP адрес - който, както вече си забелязал, е IP адресът на рутера :) При това положение единственото, което можеш да накараш mod_proxy да направи, е да пази "истинския" оригинален IP адрес на клиента някъде из *HTTP* header-ите, примерно с ProxyVia, и после на "истинския" уебсървър да имаш някаква специална обработка на тези headers. Ако искаш повече от това - ако искаш истинско запазване на оригиналния IP адрес - единственото, което може да те спаси, е NAT :) И... хм... таковата... всъщност не би трябвало да бъде чак толкова сложно :) Поздрави, Петър -- Peter Pentchev [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] PGP key: http://people.FreeBSD.org/~roam/roam.key.asc Key fingerprint FDBA FD79 C26F 3C51 C95E DF9E ED18 B68D 1619 4553 If wishes were fishes, the antecedent of this conditional would be true.
pgpE1193s2NKM.pgp
Description: PGP signature
