Version imprimable du sujet
Forums MacBidouille _ Les Langages Du Web _ VirtualHOST en local ? (résolu)
Écrit par : MacMame 13 Jul 2017, 09:33
Bonjour à toute et tous !,
Alors, voila,
J'ai un mac (en fait c'est un xserve sous Elcaptain) sur lequel, j'ai installé php 5.6, mysql et phpmyadmin (son ip en local est 192.168.1.3)
J'arrive donc à accéder via d'autre machine connecté en réseaux à ce serveur via 192.168.1.2/~username/sites/xxx.com
Jusque la , c'est bon !
Mais depuis peux, je dois installer un site qui me demande l'utilisation d'un virtual host et un alias (url rewriting), du coup j'ai activé les module url rewriting et vhost, alias etc...
J'ai mis dans /private/etc/apache2/extra/httpd-vhosts.conf
ceci:
Code
<VirtualHost *:80>
DocumentRoot "/Users/username/Sites/mynewsite/monsite/"
ServerName www.monsite.loc
ServerAlias monsite.loc
<directory "/Users/username/Sites/mynewsite/monsite/">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</directory>
</VirtualHost>
Du coup, cela fonctionne bien (url rewriting y compris) mais seulement sur la machine serveur, j'ai bien monsite.loc qui s'affiche.
Maintenant, comment faire pour accéder à monsite.loc sur mes autre machine connecté au réseaux local ?? j'ai entendu dire qu'il falais modifié le hosts de la machine client, ce que j'ai fait mais çà ne donne rien, le soucis, c'est que les machine clients possèdent toute leurs propre hosts et du coup, elle se connecte sur celui ci. Et même si j'indique le port comme ceci (monsite.loc:80), çà ne change rien ...
Quelqu'un à un idée ?
Merci pour votre aide...
Écrit par : Philippe64 13 Jul 2017, 10:02
Bonjour MacMame,
Tu peux effectivement le faire comme ceci dans ton fichier host sur les machine externes à ton xserve :
Code
192.168.1.3 www.monsite.loc
Écrit par : MacMame 13 Jul 2017, 10:04
Merci Philippe64 !
Mais malheureusement çà ne fonctionne pas. de mémoire je dois avoir un forbidden... je suis pas chez moi la ...
Écrit par : Philippe64 13 Jul 2017, 10:18
Voici comment je configure mes fichiers vhost / host sur ma machine d'hébergement en local :
/private/etc/apache2/extra/httpd-vhosts.conf
Code
# designlaps
<VirtualHost *:80>
ServerAdmin
[email protected] DocumentRoot "/Users/username/Sites/mynewsite/monsite/"
ServerName monsite.local
ServerAlias www.monsite.local
ErrorLog "/private/var/log/apache2/monsite-error_log"
CustomLog "/private/var/log/apache2/monsite-access_log" common
</VirtualHost>
/private/etc/hosts
Code
127.0.0.1 monsite.local
et sur les machines externe, comme je t'ai mis plus haut. (mais sans www)
Code
192.168.1.3 monsite.local
Et ça marche chez moi
Écrit par : MacMame 13 Jul 2017, 11:54
Ok je pense avoir fait comme toi mais je vais vérifier dans le détails quand je serais chez moi.
Merci pour tes précisions, je reviens aux nouvelles.
Écrit par : MacMame 13 Jul 2017, 12:24
Au fait je pense à un truc .
Est-ce que je peux stopper le serveur apache du mac client ? y'a peut être collusion ?
euh bon c'est sans doute une question stupide...
Écrit par : Philippe64 13 Jul 2017, 12:45
pas besoin, ça n'interfère pas avec le serveur apache.
Écrit par : MacMame 13 Jul 2017, 23:17
Alors je récapitule, j'ai mis ceci dans mon httpd-vhosts.conf:
Code
<VirtualHost *:80>
DocumentRoot "/Users/username/sites/monsite.com"
ServerName monsite.loc
ServerAlias www.monsite.loc
<Directory "/Users/username/sites/monsite.com">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require local
</Directory>
Dans hosts, j'ai mis ceci
Code
192.168.1.3 monsite.loc
Dans httpd.conf, j'ai mis ceci je ne sais pas si c'est bon...):
Code
<Directory />
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from 192.168.1.55
Allow from ::1
Allow from localhost
</Directory>
Ensuite, j'ai mis ceci sur le hosts du mac client:
Code
192.168.1.3 monsite.loc
Et voici le résultat, un forbidden, j'imagine que l'ip (192.168.1.55) du client est bloqué, non ?
Code
Forbidden
You don't have permission to access / on this server.
Écrit par : Jaypee 14 Jul 2017, 06:46
Les clients externes doivent appartenir au même réseau privé (192.168.x.y). Même le x doit matcher celui de ton serveur.
Dans le cas contraire, il faut une configuration dite de "reverse proxy" une machine sur le réseau privé avec une seconde interface réseau visible à l'extérieur et des règles de proxy qui dirigeront à l'intérieur toutes les requêtes sous un certain chemin arrivant sur le serveur de proxy (si le serveur proxy est dédié à cet usage, toutes les requêtes seront acceptées, mais il faut se méfier des cyberattaques si on ouvre inutilement large, donc restreindre aux URL qu'on veut. Pour peu qu'un hacker puisse écrire dans un répertoire du serveur, il aura vite fait de monter un serveur fantôme).
J-P
Écrit par : MacMame 14 Jul 2017, 08:36
Bonjour Jaypee,
Mon serveur et mes mac sont bien sur sur le même réseau, 192.168.1.2 (serveur) et 192.168.1.55...26..25 etc... pour les mac sur le réseau local.
Écrit par : Jaypee 14 Jul 2017, 12:46
Il faut regarder la configuration de ton routeur, si ce n'est pas une Box.
En effet, ces routeurs ont la possibilité de régler les différents connexions en mode "cyber-café": Chacun voit l'internet, mais personne ne peut "espionner" son voisin.
http://lemeilleurantivirus.fr/verrouiller-votre-rseau-wi-fi-avec-loption-disolation-sans-fil-de-votre-routeur/
J-P
Écrit par : Philippe64 14 Jul 2017, 13:34
Citation (MacMame @ 14 Jul 2017, 00:17)
Dans hosts, j'ai mis ceci
Code
192.168.1.3 monsite.loc
Moi je mets sur dans le host du serveur :
Code
127.0.0.1 monsite.loc
et bien ceci dans le host des clients
Code
192.168.1.3 monsite.loc
Écrit par : MacMame 14 Jul 2017, 15:24
Alors moi j'ai mis çà dans le host (serveur):
Code
127.0.0.1 monsite.loc www.monsite.loc
et dans le hosts client
Code
192.168.1.3 monsite.loc
et j'ai toujours:
Code
Forbidden
You don't have permission to access / on this server.
Sinon, dans httpd.conf, j'ai mis ceci, c'est bon ?
Code
#ServerName www.example.com:80
#
# Deny access to the entirety of your server's filesystem. You must
# explicitly permit access to web content directories in other
# <Directory> blocks below.
#
<Directory />
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from 192.168.1.55
Allow from ::1
Allow from localhost
</Directory>
Écrit par : Jaypee 15 Jul 2017, 07:42
Je mettrais des apostrophes:
<Directory '/'>, car sinon je ne vois que un directory vide, des propriétés globales et une balise de fermeture orpheline...
J-P
Écrit par : MacMame 17 Jul 2017, 08:16
Bonjour JP,
Merci mais çà n'a rien avoir, j'ai enfin trouvé , c'était juste mon vhost qui bloquait l'ip du mac client, j'ai donc rajouté ces 2 lignes dans mon vhost:
Code
AllowOverride All
Allow from 192.168.1.26
Et ç marche niquel !!
Merci à vous 2.
Propulsé par Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)