Apache et Lighttpd sur le même port

 
miss34
WRInaute discret
WRInaute discret
 
Messages: 53
Inscription: Mar Sep 14, 2004 6:53

Apache et Lighttpd sur le même port

Message le Mer Aoû 29, 2007 15:20

Bonjour :)

J'utilise Apache pour le contenu dynamique, Lighttpd pour le statique.
Apache écoute sur le port 80, Lighttpd sur le port 81. Tout fonctionne.

Le hic, c'est que pour le contenu statique, je dois passer des adresses du type : http://www.monsite.com:81/image.jpg
Chez certains utilisateurs, le firewall ne laisse pas partir des requêtes sur le port 81.

Etant donné que je dispose de deux interfaces réseau, j'aimerais envoyer les requetes de contenu dynamique sur le port 80 de la première, et les requêtes pour le contenu dynamique sur la deuxième :
http://www.monsite.com/page.php (www.monsite.com pointe vers l'ip de eth1)
http://img.monsite.com/image.jpg (img.monsite.com pointe vers l'ip de eth1)

Sur le serveur, bien sûr, je laisse lighttpd écouter sur le port 81.
J'ai donc fait une redirection avec iptables afin que lighttpd reçoive bien les requêtes :

Code: Tout sélectionner
iptables -t nat -A PREROUTING -p tcp --dport 80 -i eth1 -j REDIRECT --to-port 81


Mais dans un navigateur, les requêtes du type "http://img.monsite.com/image.jpg" ne donnent rien (alors que http://img.monsite.com:81/image.jpg fonctionne).

Ai-je oublié une règle dans Iptables ?

Merci bcp pour votre aide !

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics


julienr
WRInaute passionné
WRInaute passionné
 
Messages: 847
Inscription: Mar Aoû 05, 2003 15:49

Message le Mer Aoû 29, 2007 16:40

au pire tu peux te placer sur le port 8080 ou 443 ?


fandecine
Modérateur
Modérateur
 
Messages: 1583
Inscription: Sam Avr 02, 2005 15:58

Message le Mer Aoû 29, 2007 18:07

La meilleure solution est d'utiliser mod_proxy avec apache.

Dans ton http.conf tu active le module mod_proxy si tu utilise le chargement dynamique des modules, sinon tu recompile apache avec mod_proxy

ensuite danst ta configvirtualhost apache tu rajoute :

<VirtualHost ipdevotreserveur>
DocumentRoot "rootduserveur"
ServerName nomdevotreserveur
RewriteEngine On
RewriteOptions 'inherit'
RewriteRule \.(php|asp)$ - [last]
RewriteRule ^/(.*)$ http://ipdevotreserveur:81/$1 [proxy]
<Directory "rootduserveur">
Options FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>

J'ai pris comme exemple de rediriger tous les fichiers qui ne sont pas .php ou .asp sur le port 81.

Il faut bien sur remplacer ipdevotreserveur, rootduserveur, nomdevotreserveur par les valeurs appropriées :wink:


Serious
WRInaute accro
WRInaute accro
 
Messages: 2437
Inscription: Lun Nov 21, 2005 19:29

Message le Mer Aoû 29, 2007 22:06

Le but de lighthttp, c'est de servir rapidement les elements statiques (en courcircuitant la lourdeur du le processus apache). Interet qui n'est pas conserve avec ta solution (dans ce cas autant servir tout avec apache).

miss34
WRInaute discret
WRInaute discret
 
Messages: 53
Inscription: Mar Sep 14, 2004 6:53

Message le Jeu Aoû 30, 2007 2:19

Merci pour votre aide.
Finalement, j'ai retenu ma solution qui fonctionne en fait :) J'avais juste mal initialité mes règles de Iptables.

Il fallait avant faire :
Code: Tout sélectionner
iptables -F
iptables -t nat -F
iptables -X


Voilà !!

(en tous cas, lighttpd est vraiment très très rapide pour le statique!!)

 

Modérateurs: WebRankInfo, e-kiwi, OTP, fandecine, Patrice A.

Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Google Web Toolkit

  • Voir la classe C de plusieurs sites
    Cet outil vous permet de vérifier si plusieurs sites sont hébergés sur la même classe C (adresse IP du serveur).
  • Déterminer l'âge d'un site
    Cet outil vous permet de connaître une estimation de l'ancienneté d'un site : il fournit la date à laquelle Google l'a indexé la première fois (et la même chose pour archive.org).
  • TouchGraph Google Browser
    Description du TouchGraph Google Browser (outil externe) : il s'agit d'un outil graphique permettant de visualiser des sites similaires (selon Google). On peut sauter de site en site, et se rendre compte facilement des communautés de sites, ou des nébuleuses de sites traitant du même sujet.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités