Après avoir installé TeamViewer, j’ai changé le port wampserver à 8080, l’adresse est donc http://localhost:8080.
Pour le fichier hôte situé dans C: \ WINDOWS \ system32 \ drivers \ etc \, j’ai également apporté la modification ci-dessous
AVANT
127.0.0.1 www.example.com
APRÈS
127.0.0.1:8080 www.example.com
Lorsque j’accède à www.example.com, je n’ai pas directement access à mon serveur wamps, comment puis-je le réparer?
Le fichier hosts
sert uniquement à la résolution des noms d’hôte (sous Windows et sur les systèmes de type Unix). Vous ne pouvez pas y placer de numéros de port et vous ne pouvez pas faire ce que vous voulez avec une configuration générique au niveau du système d’exploitation – le navigateur est ce qui sélectionne le port à choisir.
Donc, utilisez des signets ou quelque chose comme ça.
(Certains logiciels de pare-feu / de routage peuvent autoriser la redirection des ports sortants, mais cela ne semble pas être une option attrayante pour cela.)
Vous pouvez obtenir ce que vous souhaitez en modifiant le fichier hosts via l’application Fiddler 2 .
Suivez ces étapes:
- Installez Fiddler2
- Accédez au menu Fiddler2: – Outils > HÔTES .. (Cliquez pour sélectionner)
Ajoutez une ligne comme celle-ci: –
localhost:8080 www.mydomainname.com
- Enregistrez le fichier et vérifiez
www.mydomainname.com
dans le navigateur.
J’ai réussi à atteindre cet objective en utilisant l’outil de réseau Windows inclus , netsh
.
Comme le souligne Mat: Le fichier hosts ne concerne que la résolution des noms d’hôte, alors une combinaison des deux a fait l’affaire.
example.app:80 | <--Link by Hosts File +--> 127.65.43.21:80 | <--Link by netsh Utility +--> localhost:8081
localhost:8081
127.65.43.21 example.app
127.0.0.0/8
peut être utilisée. 127.65.43.21:80
n’est pas occupé par un autre service. netstat -a -n -p TCP | grep "LISTENING"
netstat -a -n -p TCP | grep "LISTENING"
netsh interface portproxy add v4tov4 listenport=80 listenaddress=127.65.43.21 connectport=8081 connectaddress=127.0.0.1
http://example.app
Remarques:
– Ces commandes / modifications de fichiers doivent être exécutées avec des droits d’administrateur
– netsh portproxy a besoin des librairies ipv6 pour utiliser uniquement v4tov4, généralement elles seront également incluses par défaut, sinon installez-les en utilisant la commande suivante: netsh interface ipv6 install
Vous pouvez voir l’entrée que vous avez ajoutée avec la commande:
netsh interface portproxy show v4tov4
Vous pouvez supprimer l’entrée avec la commande suivante:
netsh interface portproxy delete v4tov4 listenport=80 listenaddress=127.65.43.21
Fiddler2 -> Règles -> Règles personnalisées
puis trouvez la fonction OnBeforeRequest sur put dans le script suivant à la fin:
if (oSession.HostnameIs("mysite.com")){ oSession.host="localhost:39901"; }
-Vous pouvez utiliser n’importe quelle adresse gratuite dans le réseau 127.0.0.0/8, dans mon cas, cela était nécessaire pour le flask de python et c’est ce que j’ai fait: ajoutez cette ligne dans le fichier hosts (vous pouvez trouver qu’il s’agit de Windows sous: C: \ Windows \ System32 \ drivers \ etc):
127.0.0.5 flask.dev
Assurez-vous que le port est le port par défaut “80” dans mon cas, c’est ce que app.run("127.0.0.5","80")
flask de python: app.run("127.0.0.5","80")
maintenant, lancez votre code et parcourez flask.dev
Si ce qui se passe est que vous avez un autre serveur en cours d’exécution sur localhost et que vous voulez donner à ce nouveau serveur un nom d’hôte local différent comme http://teamviewer/
Je pense que ce que vous recherchez réellement, c’est la fonctionnalité Virtual Hosts. J’utilise Apache donc je ne sais pas comment les autres démons Web supportent cela. Peut-être s’appelle-t-il Alias. Voici la documentation Apache:
Exemples d’Apache Virtual Hosts
Le moyen le plus simple consiste à utiliser Ergo comme proxy inverse: https://github.com/cristianoliveira/ergo
Vous définissez vos services et son adresse IP: PORT et ergo la route pour vous :).
Vous pouvez obtenir la même chose en utilisant nginx
ou apache
mais vous devrez les configurer.
Utiliser netsh avec connectaddress = 127.0.0.1 ne fonctionnait pas pour moi.
Même si je cherchais partout sur Internet, je ne trouvais pas la solution qui résout ce problème, à savoir utiliser connectaddress = 127.xxx (c’est-à-dire toute adresse ipv4 de 127., mais pas 127.0.0.1), car cela semble renvoyer à localhost. le même mais sans la ressortingction, de sorte que le bouclage fonctionne dans netsh.
Vous devez disposer d’un serveur HTTP NGNIX ou Apache en tant que serveur proxy pour transférer les requêtes http vers l’application appropriée -> qui écoute un port particulier (ou le faire avec CNAME qui fournit la société d’hébergement). C’est la solution la plus puissante et c’est juste un moyen très simple de continuer à append de nouveaux sous-domaines ou d’append de nouveaux domaines automatiquement lorsque les enregistrements DNS sont dirigés vers le serveur.
Apache ère l’appelle Virtual host -> httpd.apache.org/docs/trunk/vhosts/examples.html
NGINX -> Bloc serveur https://www.nginx.com/resources/wiki/start/topics/examples/server_blocks/