Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 04/01/2021, à 19:02

xunil2003

Multi site internet avec apache

Bonjour

J'ai plusieurs site internet.

Pour chaque site internet j'ai créer une fichier conf dans /etc/apache2/sites-available/

Exemple : /etc/apache2/sites-available/monsite.fr.conf

<VirtualHost *:80>
	# The ServerName directive sets the request scheme, hostname and port that
	# the server uses to identify itself. This is used when creating
	# redirection URLs. In the context of virtual hosts, the ServerName
	# specifies what hostname must appear in the request s Host: header to
	# match this virtual host. For the default virtual host (this file) this
	# value is not decisive as it is used as a last resort host regardless.
	# However, you must set it for any further virtual host explicitly.
	ServerName monsite.fr
	ServerAlias www.monsite.fr
 
	ServerAdmin webmaster.tld@online.fr
	DocumentRoot /var/www/monsite.fr
 
	# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
	# error, crit, alert, emerg.
	# It is also possible to configure the loglevel for particular
	# modules, e.g.
	#LogLevel info ssl:warn
 
	ErrorLog ${APACHE_LOG_DIR}/monsite.fr-error.log
        CustomLog ${APACHE_LOG_DIR}/monsite.fr-access.log combined

	# For most configuration files from conf-available/, which are
	# enabled or disabled at a global level, it is possible to
	# include a line for only one particular virtual host. For example the
	# following line enables the CGI configuration for this host only
	# after it has been globally disabled with a2disconf.
	#Include conf-available/serve-cgi-bin.conf
	
	#AllowOverride None # Pas accessible depuis l exterieur
        #AllowOverride All # Accessible depuis l exterieur

       <Directory "/var/www/monsite.fr">
       AuthType Basic
       AuthName "Restricted Content"
       AuthUserFile /var/www/monsite.fr/.htpasswd
       Require valid-user
       </Directory>

       Alias /pdf  "/home/laurent/pdf" 
      <Directory "/home/laurent/pdf"> 
          Options +Indexes +MultiViews +FollowSymLinks
          AllowOverride all
          Require all granted
      </Directory>

</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

puis j'ai ajouter dans  /etc/hosts ceci :

127.0.0.1       localhost
127.0.1.1       Laurent-I7-9900K
192.168.1.11   monsite.fr

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters


Depuis le pc ou est installer le serveur cela fonctionne, avec l'url suivante :

http://monsite.fr/index.php

et ne fonctionne pas avec

http://www.monsite.fr/index.php

depuis un autre poste local, quand je tape l'url suivante

http://192.168.1.11/monsite.fr/index.php

ça ne fonctionne pas ---> erreur 404 s'affiche.

Comment doit être formulé l'url à travers le réseau local pour différencier chaque site internet ?
Merci d'avance pour votre aides et conseils .

Dernière modification par xunil2003 (Le 04/01/2021, à 19:31)


- AMD R9 5950x 64 Go Ram / Intel Pentium I7 960 - 12 Go Ram - 6 T0 - Kubuntu 12.04 x64 / Kubuntu 14.04 x64 / Kubuntu 16.04 x64 / Kubuntu 18.04 x64 /  Kubuntu 20.04 x64 / Mint
- DreamPlug Multi Boot / Marvel 1.22 Ghz / Architecture ARM / 512 Mo Ram / Carte-sd 16 Go class 10 / 5 Watts / Debian Squeeze 2.6.39.4
- Raspberry PI 1 / Raspberry PI 2 / Raspberry PI 3 / Raspberry PI 4 : 4Gb
JE SUIS CHARLIE

Hors ligne

#2 Le 04/01/2021, à 20:18

soshy

Re : Multi site internet avec apache

Salut,

c'est normal que

http://www.monsite.fr/index.php

et

http://192.168.1.11/monsite.fr/index.php

ne fonctionnent pas.

Pour le premier, il faut que le hosts ressemble à

192.168.1.11   monsite.fr www.monsite.fr

Il faut faire la même manipulation sur tous les ordinateurs du réseau local qui doivent acceder au site

Hors ligne

#3 Le 04/01/2021, à 20:35

xunil2003

Re : Multi site internet avec apache

Re,

J'ai pas trés bien compris.
Vous voulez dire que dans /etc/host il faut ajouter toutes les adresses ip  des autres pc du réseau local

192.168.1.11   monsite.fr www.monsite.fr
192.168.1.12   monsite.fr www.monsite.fr
192.168.1.13   monsite.fr www.monsite.fr

pour que les site internet soit accessible depuis un autre poste.

Merci.


- AMD R9 5950x 64 Go Ram / Intel Pentium I7 960 - 12 Go Ram - 6 T0 - Kubuntu 12.04 x64 / Kubuntu 14.04 x64 / Kubuntu 16.04 x64 / Kubuntu 18.04 x64 /  Kubuntu 20.04 x64 / Mint
- DreamPlug Multi Boot / Marvel 1.22 Ghz / Architecture ARM / 512 Mo Ram / Carte-sd 16 Go class 10 / 5 Watts / Debian Squeeze 2.6.39.4
- Raspberry PI 1 / Raspberry PI 2 / Raspberry PI 3 / Raspberry PI 4 : 4Gb
JE SUIS CHARLIE

Hors ligne

#4 Le 04/01/2021, à 20:39

soshy

Re : Multi site internet avec apache

presque, sauf que sur tous les ordinateurs, il faut mettre l'ip de là où est installé apache

si apache est installé sur 192.168.1.3

il faut mettre:

192.168.1.3 monsite.fr www.monsite.fr

sur tous les ordinateurs du réseau local.

En gros, c'est pour dire aux ordinateur "le site monsite.fr et www.monsite.fr sont à chercher sur l'ordinateur 192.168.1.3"

Et si c'est toujours pas assez clair, je te ferai une explication détaillée smile

Dernière modification par soshy (Le 04/01/2021, à 20:48)

Hors ligne

#5 Le 05/01/2021, à 00:10

xunil2003

Re : Multi site internet avec apache

Re,

Ok j'ai compris sur tout les ordinateurs du réseau, je doit ajouter dans leurs /etc/host l'adresse ip de l'ordinateur la ou est installer le serveur web

192.168.1.11 monsite.fr www.monsite.fr

Mais si je veux que ce soit accessible depuis l’extérieur que dois-je faire ?

Merci

Dernière modification par xunil2003 (Le 05/01/2021, à 00:11)


- AMD R9 5950x 64 Go Ram / Intel Pentium I7 960 - 12 Go Ram - 6 T0 - Kubuntu 12.04 x64 / Kubuntu 14.04 x64 / Kubuntu 16.04 x64 / Kubuntu 18.04 x64 /  Kubuntu 20.04 x64 / Mint
- DreamPlug Multi Boot / Marvel 1.22 Ghz / Architecture ARM / 512 Mo Ram / Carte-sd 16 Go class 10 / 5 Watts / Debian Squeeze 2.6.39.4
- Raspberry PI 1 / Raspberry PI 2 / Raspberry PI 3 / Raspberry PI 4 : 4Gb
JE SUIS CHARLIE

Hors ligne

#6 Le 05/01/2021, à 11:56

mazarini

Re : Multi site internet avec apache

1) Il faut savoir si ton adresse IP public est fixe ou pas (à voir avec ton fournisseur d'accès)
2) Si ton adresse IP est fixe, lier ton IP public à ton site chez le registrar qui t'as vendu le nom de domaine (ou si tu gère toi même le dns faire le lien sur le serveur)
3) Si ton adresse IP n'est pas fixe, utiliser un service de DNS dynamique puis faire la modification en utilisant un CNAME comme ci-dessus.
4) Rediriger les flux du port 80 sur la machine 192.168.1.11 (à faire sur la box)


S'il existait une école de la politique, les locaux devraient être édifiés rue de la Santé. Les élèves pourraient s'habituer. (Pierre Dac)

Hors ligne

#7 Le 05/01/2021, à 15:31

soshy

Re : Multi site internet avec apache

Là ça se complique...

1. Le nom de domaine
Il faut que les ordinateurs du monde entier soient capable de faire la correspondance entre le nom de ton site, et une adresse IP, et tu ne vas pas demander au monde de modifier son fichier host. Lorsque ta machine n'a pas de correspondance dans le fichier host, elle fait ce qu'on appelle une requête DNS à un serveur DNS (Domain Name Server). Ce serveur DNS gère une immense liste de correspondance (à l'image de ton fichier host) et si jamais il connait pas, il demande à un autre serveur DNS, etc. Au final, si un correspondance est trouvée, le serveur DNS répond à ta requête DNS avec l'IP qu'il faut utiliser afin d'atteindre le site demandé.
Ce processus s'appelle la résolution DNS.

Il te faut donc un nom de domaine. Si le nom est pas vraiment important il y a des services gratuits, si c'est important, il va falloir acheter un nom de domaine, ça te donnera plus de choix dans le nom.
Il faudra aussi faire en sorte d'associer l'IP publique du serveur au domaine. La méthode différente d'un fournisseur de domaine à un autre alors je vais pas m'attarder dessus.

2. Un serveur accessible depuis Internet

Les ordinateurs sont identifiés sur internet par une adresse IP. Le nom de domaine, c'est simplement un système que les humains ont trouvé car c'est plus facile pour eux de retenir google.fr que 172.217.18.195. Ca permet aussi de changer l'ordinateur google et son IP en mettant juste à jour la table de correspondance, c'est pratique.
Donc, pour que l'internet puisse avoir accès à ton site, il faut que le serveur de ton site soit accessible depuis internet. L'IP qu'internet voit, c'est ce qu'on appelle l'IP publique. Dans ton cas, tu as l'air d'être dans un réseau local avec une box internet, et l'IP de ton serveur (192.168.1.11) c'est une adresse IP dite "privée", non accessible depuis internet (on appelle ça un réseau NAT ou NATé).
Ta box internet, c'est elle qui est directement reliée à Internet. Elle a une ip privée et une ip publique. Toutes les connexions à internet depuis ton réseau local sont faites depuis cette IP publique. Pour un site internet, lorsque tu y accèdes depuis 2 ordinateurs différent sur ton réseau local, alors pour le site c'est la même machine source, ta box, qui se connecte à lui.
Donc si tu veux que le monde se connecte à ton serveur, le monde doit se connecter à ta box internet (son IP publique). C'est cette IP publique qu'il faut associer au nom de domaine du point 1.

Ok donc si internet se connecte à ta box lorsqu'il intérroge ton adresse publique, comment on arrive sur ton serveur ?!
Il faut configurer le transfert de port, ou "port fowarding". En gros, c'est dire à ta box que lorsqu'elle reçoit une connexion entrante (sur l'IP publique) sur le port X (par exemple 80), elle doit transférer la connexion entrante reçu à la machine Y du réseau local sur le port Z de la machine Y. Par exemple dans ton cas, il s'agira de transférer le port 80 de ta box vers le port 80 de 192.168.1.11
Cette configuration là aussi dépend beaucoup des routeurs/box internet et donc je n'en dirais pas plus, mais l'idée est là.

3. Les subtilités...
En fonction de ton opérateur internet et de ta configuration réseau, il se peut que l'adresse IP locale de ton serveur change, de même que ton adresse publique.
Il faut donc s'assurer que l'IP de ton serveur local soit fixe pour que la box redirige bien les connexions entrantes toujours vers la bonne machine.
Il faut aussi s'assurer que le nom de domaine pointe toujours vers ton IP publique ! Soit tu as une IP fixe/statique attribuée par ton fournisseur et donc là pas de soucis, soit elle est dynamique et lorsqu'elle change il faut la mettre à jour... Dans ce cas là, il y a des systèmes qui permettent d'automatiser ça, mais ça dépend de pleins de chose. Ton fournisseur de nom de domaine, si ta box supporte ce fournisseur dynDNS etc.

Voilà, plein d'explications, plein de pistes à explorer pour toi.
Bon courage smile

Dernière modification par soshy (Le 05/01/2021, à 15:40)

Hors ligne