Comment migrer son site en localhost vers un hébergeur externe ?
Droppy
Member
Bonjour,
Je suis en cours de création de mon premier site, sur mon ordi.
Donc toutes mes urls sont de la forme http://localhost/monsite.fr
Question :
Comment peut-on modifier toutes les urls pour supprimer le localhost, avant la migration ?
(sur certaines pages, j'ai mis des liens vers d'autres pages .. qui sont donc en localhots)
Et est-il possible d'accéder à mon site à partir d'un autre ordi dans mon réseau interne (LAN) ?
Merci
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Bonjour Droppy,
1) en utilisant un éditeur de texte et faisant une recherche avec remplacement de texte dans les fichiers des répertoires data/articles et data/statiques pour y insérer les bonnes urls
2) oui, en utilisant l'adresse ip de ton serveur web local (http://x.x.x.x/monsite.fr). Tu peux aussi y accéder depuis ton ordinateur de la même façon (se référer à la configuration de ton serveur local pour connaitre son @ip)
Pour info, sur mon poste j'ai installé Wamp64 pour le serveur Apache... et j'ai trouvé la soluce que je vous communique ci-dessous :
Donc pour les urls, il suffit de créer via l'admin de WampServer de créer un Virtual Host avec comme url monprojet.fr au lieu d'avoir localhost au début de chaque url.
Il y a toutes les infos sur : https://blog.smarchal.com/creer-un-virtualhost-avec-wampserver
Il me reste juste à gérer les autorisations au niveau du serveur Apache et du firewall du pc hébergeant le site, car sur un autre pc en interne, j'ai un forbidden sur http://192.168.7.91/sensibilisateur-numerique.fr/
Ah j'oubliai, merci kowalsky pour ta réponse
Vérifie les ports utilisés par ton serveur WAMP : est-ce 80 ou 8080 ? auquel cas ton site sera joignable via http://192.168.7.91:8080/sensibilisateur-numerique.fr/
Bonjour kowalsky,
Après quelques recherches, sur wamp, j'ai trouvé la solution (le port est 80:
1 - Création d'un Virtual Host (question de sécurité) en ajoutant les lignes suivantes dans le fichier httpd-vhosts.conf qui est dans C:\wamp64\bin\apache\apache2.4.41\conf\extra
#
<VirtualHost *:80>
ServerName sensibilisateur-numerique.fr
DocumentRoot "${INSTALL_DIR}/www/sensibilisateur-numerique"
<Directory "${INSTALL_DIR}/www/sensibilisateur-numerique/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted => par défaut on a "locale" mettre all granted pour accès en dehors de localhost
</Directory>
</VirtualHost>
2 - Modifier le fichier hosts qui est dans C:\Windows\System32\drivers\etc en ajoutant les lignes suivantes :
127.0.0.1 sensibilisateur-numerique.fr
::1 sensibilisateur-numerique.fr
3 - Pour accéder au site à partir d'un autre ordi du réseau de la maison (lan)
Modifier le fichier hosts du poste client en ajoutant les mêmes lignes mais avec l'adresse Ip du serveur.
J'espère que cela pourra aider d'autres personnes ... numériquement votre 😀
Jean-Yves Moyon
J'utilise la version pro de Visual Wizard .. que je commence un peu à maitriser ..pas mal .. à suivre
Bonjour,
attention, 127.0.0.1 correspond à l'adresse interne de ton ordinateur. Je ne suis pas sûr que tu puisses accéder à ton site depuis ton réseau local en utilisant celle-ci.
Par contre je constate que ton répertoire d'installation est : /www/sensibilisateur-numerique/, l'url pour accéder à ton site local est donc http://localhost/sensibilisateur-numerique/ ou http://192.168.7.91/sensibilisateur-numerique/ depuis le réseau si l'adresse de ton serveur est 192.168.7.91 (et non http://192.168.7.91/sensibilisateur-numerique.fr/ )
Je suis très étonné de l'utilisation d'une redirection DNS depuis le fichier host du PC car c'est normalement le serveur WAMP qui fait ce travail.
(sans les parenthèses bien sur) :)
D'autant plus que quand ton site sera déployé sur le web, la redirection DNS de "sensibilisateur-numerique.fr" sur ton PC te renverra toujours sur ton site local, et non sur ton site web !
Ah ok, j'ai compris : je viens d'aller faire un tour sur le lien que tu indiquais précédemment. L'exemple fourni est un détournement de l'usage du virtualhost pour accéder à un site local avec une adresse web. Par défaut WAMP fait très bien son travail et tu n'as rien à modifier dans les paramétrages. Tout site installé dessus sera joignable sous la forme http://localhost/nom du répertoire dans www/
Ton souci est la résultante d'un mélange entre l'url du futur site déployé sur le net et le nom du répertoire sur ton serveur local qui étaient différents.
A noter que si tu ne comptes pas avoir plusieurs sites de test en local, il te sera sans doute plus simple d'installer celui-ci directement à la racine de ton serveur wamp (donc dans www) et ton site de test sera accessible directement depuis http://localhost/ (ou http://adresse ip du serveur wamp/)
L'avantage avec PluXml est que tu n'as qu'à déplacer les fichiers de /www/sensibilisateur-numerique/ vers /www/ pour réaliser l'opération ;)
(il faudra aussi que tu revérifies les url mises en dur dans ton site)
Bonjour,
Quand tu modifies le fichier hosts sur ton poste, cela revient à remplacer un serveur dns.
Sur un poste distant (dans le réseau interne) il faut ajouter les lignes suivantes (l'Ip est celle du serveur)
192.168.1.79 sensibilisateur-numerique.fr
fe80::5881:8ec6:793d:61f%18 sensibilisateur-numerique.fr
Et sur le poste serveur où est installé wamp on met :
127.0.0.1 sensibilisateur-numerique.fr
::1 sensibilisateur-numerique.fr
Ainsi sur les postes l'accès se fait via l'url : http://sensibilisateur-numerique.fr/
Et normalement, il suffit de faire la même modif sur un poste à l'exterieur en mettant l'adresse IP public de ta box.
Et sur la config de la box faire une redirection du port 80 vers l'IP 192.168.1.79 (ip du serveur)
Pas encore testé .. mais çà devrait être ok.
Pratique quand on veut faire visionner son site par des proches avant de le publier sur la toile !
Quand mon site sera ok .. je te communiquerai mon ip public stv (mais en privé si possible sur contact@sensibilisateur-numerique.fr)
Juste un petit avertissement : rediriger le port 80 de ta box est une mauvaise idée. Tu risques d'avoir des surprises dans ta navigation sur le web, sans parler du risque d'intrusion sur ton réseau local.
Et puisque tu sembles vouloir faire de la redirection DNS en local, utilise donc celle de ta box : cela t'évitera de modifier la configuration de chacun de tes PC versus une ligne de code à ajouter sur la box ;)
Noté.. je vais voir pour modifier le firewall (winodws10) du serveur pour bloqué les sorties .. et la découverte du réseau.
Autrement on peut sur le virtual hosts modifier le require all granted, pour ne mettre que les ip autorisées .
Et merci pour le dns de la box .. je n'y avais pas pensé
A+
Quand on accède via une IP c'est le premier vhosts qui répond donc dans le fichier httpd-vhosts.conf c'est le localhost .
J'ai donc modifier le fichier httpd-vhosts.conf comme suit :
<VirtualHost *:8080>
ServerName localhost
ServerAlias localhost
DocumentRoot "${INSTALL_DIR}/www/sensibilisateur-numerique"
<Directory "${INSTALL_DIR}/www//sensibilisateur-numerique">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Et le site est accessible via l'adresse IP public de la box. Ce qui permet de pourvoir faire tester le site à un nombre restreint de personne avant de le déposer chez un hébergeur