WampServer

Apache, PHP, MySQL on Windows 

 
  • Accueil forum
  • Retour à WampServer
  • presentation
  • Download
  • Addons
  • Formations
  • Alter Way

 
Voir le sujet: Précédent•Suivant
Aller à : Liste des Forums•Liste des messages•Nouvelle discussion•Recherche•Connexion•Imprimer la vue
Impossible d'accéder à mes virtual host depuis le smartphone au sein du même réseau
Envoyé par: -Cyril- (---.w90-127.abo.wanadoo.fr)
Date: 04 May 2022 à 19:01

Bonjour,
et merci d'avance de me lire.

Je suis sous window 10, et wamp 3.2.5.

Au niveau du parefeu window, le port 80 est bien autotisé.

httpd.conf :

<Directory />
AllowOverride none
Require all granted
</Directory>

httpd-vhosts.conf :

<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

...

<VirtualHost *:80>
ServerName test
DocumentRoot "c:/wamp64/www/test"
<Directory "c:/wamp64/www/test/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

Sur le smartphone ou un autre PC du réseau, (http://192.168.1.12) (mon IPV4) me mène à wampserver, par contre [test] me donne une page d'erreur (DNS_PROBE_FINISHED_NXDOMAIN)

Merci !



Modifie 1 fois. Derniere modification le 04/05/2022 à 19:19 par -Cyril-.

Options: Répondre•Citer ce Message
Re: Impossible d'accéder à mes virtual host depuis le smartphone au sein du même réseau
Envoyé par: Otomatic (Modérateur)
Date: 05 May 2022 à 11:38

Bonjour,

Le fichier httpd.conf ne doit pas être modifié et doit rester en Require all denied
Le VirtualHost localhost doit rester en Require local.

Traduction d'une contribution de RiggsFolly sur le forum anglophone concernant les accès depuis un Smartphone.

Quel est le problème réel
Note : Explication théorique fonctionnelle. Voir à la fin comment le faire proprement avec Wampserver)
Comme nous ne pouvons pas modifier la configuration d'un téléphone comme nous le faisons avec un PC, le téléphone ne peut jamais trouver le nom de domaine que nous créons dans notre définition d'hôte virtuel sur la machine serveur, car il n'existe aucun serveur DNS dans lequel il pourrait localiser l'adresse IP, et un serveur DNS est le seul endroit où un téléphone peut chercher.

Si vous souhaitez accéder à l'un de vos domaines d'hôtes virtuels à partir d'un autre PC, il vous suffit d'ajouter une ligne comme celle-ci dans le fichier HOSTS de l'autre PC.

192.168.0.10 exemple.local

C'est ce qu'Apache attend pour pouvoir associer une requête à un Vhost, mais vous ne pouvez pas le faire sur un téléphone/une tablette.

Lorsque nous créons un hôte virtuel Apache, nous disons en fait à Apache d'examiner le nom de domaine de la connexion entrante et de faire correspondre ce nom de domaine à un ServerName qui existe dans l'une de nos multiples définitions d'hôtes virtuels.

Mais si nous utilisons par exemple exemple.local comme notre domaine hébergé virtuellement lorsque nous essayons de nous y connecter à partir de notre téléphone, le téléphone effectue une recherche DNS et ne trouve pas ce domaine et ne peut donc pas obtenir son adresse IP.

Le moyen le plus simple de contourner ce problème est :

En supposant que nous n'ayons pas accès à l'ajout d'enregistrement à un serveur DNS, nous devons trouver une autre solution.

La plus simple consiste à utiliser l'adresse IP du PC sur lequel tourne le serveur WAMPServer (Apache) et un numéro de port spécifique. Il s'agit donc d'un numéro de port différent pour chacun de nos sites que nous voulons utiliser à partir d'un téléphone.
Comment faire ?

Ajouter le nouveau port d'écoute à httpd.conf comme suit après les 2 déclarations d'écoute existantes
#Listen 12.34.56.78:80
Listen 0.0.0.0:80
Listen [::0]:80
Listen 0.0.0.0:8000
Listen [::0]:8000
Suggestion de fichier httpd-vhosts.conf
#
# Virtual Hosts
#

# Always keep localhost, and always first in the list
# this way a ramdom look at your IP address from an external IP
# maybe a hack, will get told access denied
<VirtualHost *:80>
  ServerName localhost
  DocumentRoot c:/wamp/www
  <Directory  "c:/wamp/www/">
    Options +Indexes +FollowSymLinks +MultiViews
    AllowOverride All
    Require local
  </Directory>
</VirtualHost>

# The normal Vhost definition for one of our sites
<VirtualHost *:80>
  ServerName example.local
  DocumentRoot "d:/websrc/example/www"
  <Directory  "d:/websrc/example/www/">
    Options +Indexes +Includes +FollowSymLinks +MultiViews
    AllowOverride All
    Require local
  </Directory>
</VirtualHost>

# Access example.dev from phone for testing
<VirtualHost *:8000>
  ServerName example.local
  DocumentRoot "d:/websrc/example/www"
  <Directory  "d:/websrc/example/www/">
    Options +Indexes +Includes +FollowSymLinks +MultiViews
    AllowOverride All
    Require local
    # assuming yoursubnet is 192.168.0.?
    # allow any ip on your WIFI access
    Require ip 192.168.0
  </Directory>
</VirtualHost>

Redémarrez Apache à partir de wampmanager après avoir terminé ces modifications.

Maintenant vous testez ceci depuis le PC du WAMPServer en utilisant le ServerName i.e. example.dev et depuis le téléphone en utilisant l'ip du PC exécutant WAMPServer avec le numéro de port i.e. 192.168.0.10:8000

Apache trouvera le code correct pour servir les deux demandes.

Si vous souhaitez que plus d'un hôte virtuel soit accessible depuis votre téléphone, il vous suffit de reproduire cette idée et de changer le numéro de port pour chaque nouveau site, disons que vous utiliseriez 8001,8002,8003 etc. Pour autant de sites que vous voulez accéder.
Vous devrez peut-être aussi modifier votre pare-feu pour autoriser l'accès en http sur le port 8000, ou sur tout autre port que vous choisirez d'utiliser.

- Le faire proprement avec Wampserver.
- Comment ajouter un ou plusieurs Listen Port
Clic-Droit -> Outils -> Ajouter un Listen Port à Apache

- Puis créer le VirtualHost avec la page Ajouter un VirtualHost
Ce qui donnera dans le fichier httpd-vhosts.conf :
<VirtualHost *:${MYPORT8000}>
	ServerName example.local
	DocumentRoot "d:/websrc/example/www"
	<Directory  "d:/websrc/example/www/">
		Options +Indexes +Includes +FollowSymLinks +MultiViews
		AllowOverride All
		Require local
	</Directory>
</VirtualHost>
Il vous faudra ajouter « à la main » le Require supplémentaire :
<VirtualHost *:${MYPORT8000}>
	ServerName example.local
	DocumentRoot "d:/websrc/example/www"
	<Directory  "d:/websrc/example/www/">
		Options +Indexes +Includes +FollowSymLinks +MultiViews
		AllowOverride All
		Require local
    # en supposant que votre réseau local est 192.168.0
    # autoriser n'importe quelle ip de votre réseau local, WIFI
    Require ip 192.168.0
	</Directory>
</VirtualHost>

---------------------------------------------------------------
Documentation Apache - Documentation PHP - Documentation MySQL - Wampserver install files & addons

Options: Répondre•Citer ce Message
Re: Impossible d'accéder à mes virtual host depuis le smartphone au sein du même réseau
Envoyé par: -Cyril- (---.128.252.185.rev.airmob.eu)
Date: 06 May 2022 à 15:46

Problème résolu, mille fois merci !

Options: Répondre•Citer ce Message


Aller à : Liste des Forums•Liste des messages•Recherche•Connexion
Désolé, seuls les utilisateurs connectés peuvent envoyer des messages dans ce forum.
Cliquer ici pour se connecter

design by jidePowered by Alter Way get firefoxget PHP