Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
apache - virtualhosts a redireccionar para outras máquinas?
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Portuguese
View previous topic :: View next topic  
Author Message
RoadRunner
Bodhisattva
Bodhisattva


Joined: 12 Jun 2002
Posts: 490
Location: Coimbra, Portugal

PostPosted: Fri Jul 09, 2004 3:32 am    Post subject: apache - virtualhosts a redireccionar para outras máquinas? Reply with quote

Boas,

Tenho outra dúvida =) Queria poder especificar através de virtual hosts máquinas da lan internas. Ou seja, algo do tipo, tenho uma máquina principal, onde está um apache acessível pela porta 80. Se eu fizer um request do tipo dominio.com, esse request é satisfeito pela própria máquina. Mas se o request for sub.dominio.com, esse request é redireccionado para uma máquina interna da LAN, mantendo a porta 80 =)

Eu sei que posso fazer port forward de várias portas para as máquinas da lan interna e depois no vhosts.conf ter para cada subdominio um redirect para um url do tipo sub.dominio.com:81, mas não era bem isso. A ideia era isto ser transparente, ou seja num request deste tipo o apache faria um request à máquina interna e apresentava o resultado transparentemente.

Qualquer coisa do tipo:

<virtualhost *:80>
Servername sub.dominio.com
ServerIP 192.168.0.10
</virtualhost>

Assim sites mais exigentes com bases de dados pesadas e tal eram servidos numa máquina mais potente, mas ficava tudo de uma forma transparente ao utilizador final. É que não cria ter mesmo sites com um url onde a porta é especificada...

Isto por acaso é possível? Procurei no google e nos forums, mas nao encontrei nada relacionado.
Back to top
View user's profile Send private message
Mythos
l33t
l33t


Joined: 02 May 2004
Posts: 953
Location: Portugal

PostPosted: Fri Jul 09, 2004 11:50 am    Post subject: Reply with quote

Tchiii que grande confusão, isso é muito simples, basta configurares o bind! para teres virtual hosts!!!

e depois defineros os vários sub dominios na máquina de vais aceder a outra.

Eu tive que fazer um trabalho que tinha ligações entre .net e php . XML pelo meio, para isso tive que configurar virtual servers:

em clakware /var/named/db.kronos.mythos.pt


Code:
$TTL    86400
@       IN      SOA     root.localhost. kronos.mythos.pt. (
                                      1997022700 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
              IN      NS      localhost.
                                                                               
kronos.mythos.pt.               IN      A     192.168.1.3
servidor.kronos.mythos.pt.      IN      A     192.168.1.3
cliente.kronos.mythos.pt.       IN      A     192.168.1.3
admin.kronos.mythos.pt.         IN      A     192.168.1.3
kronos.mythos.pt.               IN      A     192.168.1.3
kronos.mythos.pt.               IN      A     213.22.224.233
servidor.kronos.mythos.pt       IN      A     213.22.224.233
clientekronos.mythos.pt.        IN      A     213.22.224.233
admin.kronos.mythos.pt.         IN      A     213.22.224.233


/etc/named.conf
(acrescentei isto no final )

Code:
zone "kronos.mythos.pt" IN {
        type master;
        file "db.kronos.mythos.pt";
        allow-update { none; };
};


Virtual Hosts do apache:

Code:
<VirtualHost *:80>
    ServerAdmin jini@clix.pt
    DocumentRoot "/home/apache5/AdminZone"
    ServerName admin.kronos.mythos.pt
    ErrorLog /var/log/error8_log
    CustomLog /var/log/access8_log common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin jini@clix.pt
    DocumentRoot "/home/apache5/PerryMason"
    ServerName servidor.kronos.mythos.pt
    ErrorLog /var/log/error7_log
    CustomLog /var/log/access7_log common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin jini@clix.pt
    DocumentRoot "/home/apache5/HerculePoirot"
    ServerName cliente.kronos.mythos.pt
    ErrorLog /var/log/error6_log
    ServerName servidor.kronos.mythos.pt
    ErrorLog /var/log/error7_log
    CustomLog /var/log/access7_log common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin jini@clix.pt
    DocumentRoot "/home/apache5/HerculePoirot"
    ServerName cliente.kronos.mythos.pt
    ErrorLog /var/log/error6_log
    CustomLog /var/log/access6_log common
</VirtualHost>


Depois nas outras máquinas ou no ficheiros /etc/hosts tens que lá meter como é obvio:
Code:

192.168.1.3 kronos.mythos.pt


ou noutro os conhecido:
Code:

c:\Windows\system32\drivers\etc\hosts

192.168.1.3 kronos.mythos.pt

_________________
Best Regards,
Sérgio Henrique
Linux dune 3.0.6-gentoo #1 SMP Thu Oct 27 16:47:29 WEST 2011 x86_64 Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz GenuineIntel GNU/Linux
Back to top
View user's profile Send private message
RoadRunner
Bodhisattva
Bodhisattva


Joined: 12 Jun 2002
Posts: 490
Location: Coimbra, Portugal

PostPosted: Fri Jul 09, 2004 5:54 pm    Post subject: Reply with quote

Mas com a configuração que tens, para além de só funcionar na lan, tens sempre o mesmo apache fa funcionar numa só máquina.

O que eu queria era uma espécie de apache a servir como proxy entre várias máquinas locais que redireccionava os pedidos para cada máquina dependendo do virtual host escolhido.
Back to top
View user's profile Send private message
Mythos
l33t
l33t


Joined: 02 May 2004
Posts: 953
Location: Portugal

PostPosted: Sat Jul 10, 2004 5:59 pm    Post subject: Reply with quote

kronos.mythos.pt. IN A 213.22.224.233
servidor.kronos.mythos.pt IN A 213.22.224.233
clientekronos.mythos.pt. IN A 213.22.224.233
admin.kronos.mythos.pt. IN A 213.22.224.233

funciona fora da lan, so tens e de configurar o hosts dos pc's onde queres ter acesso ao servidor.

Quanto a redirecionares, só estou a ver isso configurando o dns, definindo os vários dns da rede.
_________________
Best Regards,
Sérgio Henrique
Linux dune 3.0.6-gentoo #1 SMP Thu Oct 27 16:47:29 WEST 2011 x86_64 Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz GenuineIntel GNU/Linux
Back to top
View user's profile Send private message
md5sum
n00b
n00b


Joined: 26 Jun 2003
Posts: 10
Location: Portugal

PostPosted: Sat Jul 10, 2004 11:39 pm    Post subject: Reply with quote

Sim, isso tem de ser feito através de um servidor de dns e não web.
Back to top
View user's profile Send private message
RoadRunner
Bodhisattva
Bodhisattva


Joined: 12 Jun 2002
Posts: 490
Location: Coimbra, Portugal

PostPosted: Sun Jul 11, 2004 7:55 am    Post subject: Reply with quote

Da forma que tens isso, cada um dos subdominios aponta para o mesmo ip.

logo, quando chamas qualquer um desses subdominios a máquina que tem esse ip responde, ou seja é sempre o mesmo apache.

O meu problema não é ter virtual hosts, isto porque eu até tenho *.dominio IN A ip, ou seja tudo o que seja sub-dominio vai parar à minha máquina.

O problema é, como é que eu ponho a coisa a funcionar assim:

kronos.mythos.pt. IN A 213.22.224.233 ->apache da máquina 192.168.0.1
servidor.kronos.mythos.pt IN A 213.22.224.233 ->apache da máquina 192.168.0.2
clientekronos.mythos.pt. IN A 213.22.224.233 ->apache da máquina 192.168.0.3
admin.kronos.mythos.pt. IN A 213.22.224.233 ->apache da máquina 192.168.0.4
Back to top
View user's profile Send private message
Mythos
l33t
l33t


Joined: 02 May 2004
Posts: 953
Location: Portugal

PostPosted: Sun Jul 11, 2004 1:46 pm    Post subject: Reply with quote

só ainda não percebi uma coisa para que queres redirecionar o apache para outros apaches ? não ficava melhor configurar os virtual em cada um ???

Ou configuras os dns de cada computador ou então tenta martelar isso:
Code:

vais a /etc/hosts:

192.168.0.1 kronos.mythos.pt kronos
192.168.0.2 servidor.kronos.mythos.pt servidor
...

depois no db.

metes:
 kronos.mythos.pt. IN A 192.168.0.1
 servidor.kronos.mythos.pt. IN A 192.168.0.2

...
_________________
Best Regards,
Sérgio Henrique
Linux dune 3.0.6-gentoo #1 SMP Thu Oct 27 16:47:29 WEST 2011 x86_64 Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz GenuineIntel GNU/Linux
Back to top
View user's profile Send private message
RoadRunner
Bodhisattva
Bodhisattva


Joined: 12 Jun 2002
Posts: 490
Location: Coimbra, Portugal

PostPosted: Sun Jul 11, 2004 7:30 pm    Post subject: Reply with quote

Eu quero redireccionar por uma razão simples. Imaginem este diagrama:

Code:


| Internet | ---> | dominio.com | --> | 192.168.0.1 |
            \--> | sub.dominio.com| --> | 192.168.0.2 |


E por aí adiante. Imaginem que a máquina 192.168.0.1 é uma máquina pouco potente, então serve apenas páginas em html puras. A máquina 192.168.0.2 já é uma máquina mais poderosa, pode aguentar com uma base de dados. O exemplo acima é simples, pois a ideia não era apenas esta, poderia ter máquinas na lan cuja potência dependia da necessidade de cada virtual host. Assim virtual hosts com necessidades de base de dados eram satisfeitos por 192.168.0.2, subdominios com necessidades de jsp iam apontar para uma máquina configurada com Tomcat, etc.

Isto dentro de uma lan é bastante simples, faço como vocês dizem. Mas eu quero que isto fique acessível do exterior, da internet, da qual tenho apenas um ip público. Assim quando eu faço um request sub.dominio.com ele vai sempre parar à máquina que faz o host do dominio.com. Esta verifica qual o subdominio pretendido (sub neste caso) e vê que quem satisfaz este pedido é a máquina interna 192.168.0.2, então de uma forma transparente servia apenas de proxy entre o cliente que está na internet e a máquina interna que aloja o sub.dominio.com

Eu imagino que isto seja impossível com apenas um ip externo.. mas por isso coloquei a questão.
Back to top
View user's profile Send private message
Mythos
l33t
l33t


Joined: 02 May 2004
Posts: 953
Location: Portugal

PostPosted: Sun Jul 11, 2004 8:18 pm    Post subject: Reply with quote

queres tu fazer uma especia de distcc ...

Nesse caso não estou a ver a solução, mas deve haver, uma coisa podes fazer que é quando falha a net num ir para o outro ... Agora dividir o rendimento, desconheço ...
_________________
Best Regards,
Sérgio Henrique
Linux dune 3.0.6-gentoo #1 SMP Thu Oct 27 16:47:29 WEST 2011 x86_64 Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz GenuineIntel GNU/Linux
Back to top
View user's profile Send private message
meetra
Tux's lil' helper
Tux's lil' helper


Joined: 18 Nov 2002
Posts: 135
Location: Porto, Portugal

PostPosted: Sun Jul 11, 2004 8:18 pm    Post subject: Reply with quote

http://httpd.apache.org/docs-2.0/mod/mod_proxy.html

dá uma olhada na directiva ProxyPassReverse. :)
Back to top
View user's profile Send private message
RoadRunner
Bodhisattva
Bodhisattva


Joined: 12 Jun 2002
Posts: 490
Location: Coimbra, Portugal

PostPosted: Mon Jul 12, 2004 1:59 am    Post subject: Reply with quote

meetra, em cheio!

Perfeito, era mesmo isto que eu queria. Caso alguém queira fazer isto é bastante simples. Basta na configuração dos virtual hosts ter algo do estilo:

Code:

<VirtualHost *:80>
ServerName subdominio.dominio.org
DocumentRoot /var/www/localhost/htdocs/subdominio
ProxyPass /var/www/localhost/htdocs/subdominio http://192.168.0.2/
</VirtualHost>


Funciona na perfeição =) Mais uma vez obrigado, isto vai-me dar muito, muito jeito!
Back to top
View user's profile Send private message
md5sum
n00b
n00b


Joined: 26 Jun 2003
Posts: 10
Location: Portugal

PostPosted: Mon Jul 12, 2004 10:11 pm    Post subject: Reply with quote

Desconhecia :?
Muito bom mesmo :D
Back to top
View user's profile Send private message
Mythos
l33t
l33t


Joined: 02 May 2004
Posts: 953
Location: Portugal

PostPosted: Sun Aug 08, 2004 12:15 am    Post subject: Reply with quote

Desconhecia muito fixe :) só agora é que vi a solução :)

Thanx
_________________
Best Regards,
Sérgio Henrique
Linux dune 3.0.6-gentoo #1 SMP Thu Oct 27 16:47:29 WEST 2011 x86_64 Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz GenuineIntel GNU/Linux
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portuguese All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum