Puis-je mapper un nom d'hôte * et * un port avec / etc / hosts? [fermé]


195

Puis-je mapper une adresse IP comme 127.0.0.1un nom de domaine et un port?

Par exemple, je voudrais mapper 127.0.0.1versapi.example.com:8000


6
Vous ne pouvez pas mapper le numéro de port dans / etc / hosts. Au lieu de cela, vous pouvez définir comme 127.0.0.1 api.mydomain.comet y accéder dans le navigateur commeapi.mydomain.com:8080
Fizer Khan

J'ai lu quelque part que DNS prend en charge cela. Vous pouvez avoir un enregistrement qui dit sur www.example.com http est sur le port 80 et aussi un enregistrement A pour dire que l'adresse est 127.0.0.1 il a également dit qu'il n'était pas bien pris en charge. Cela n'a pas dit grand-chose après cela.
ctrl-alt-delor

Réponses:


195

Non, ce n'est pas possible. Le port ne fait pas partie du nom d'hôte, il n'a donc aucune signification dans le hosts-file.


143

Si vous avez vraiment besoin de faire cela, utilisez un proxy inverse.

Par exemple, avec nginx comme proxy inverse

server {
  listen       api.mydomain.com:80;
  server_name  api.mydomain.com;
  location / {
    proxy_pass http://127.0.0.1:8000;
  }
}

4
Je pense que la ligne de proxy_pass devrait ressembler à ceci: proxy_pass http://127.0.0.1:8000;j'ai un "préfixe d'URL invalide" sur nginx 1.4.3.
Nobu

merci pour cette merveilleuse astuce! solution simple pour la plupart des serveurs.
micahscopes

J'utilise cette astuce pour mapper les ports d'une machine distante (par exemple cloud.app:80 alors que le port réel est 8080). Très utile pour tester les nœuds Confluence d'un cluster mais y accéder sur la même URL de base. Merci!
Gábor Nagy

10
J'ai eu fondamentalement le même problème et la solution utilisant ce proxy inverse est vraiment utile. Bien que je voulais une solution plus simple, j'ai donc créé cet outil: github.com/cristianoliveira/ergo J'espère que cela aidera d'une manière ou d'une autre :)
Cristian Oliveira

Merci @CristianOliveira! Cela m'a beaucoup aidé :)
Bruno Duyé
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.