J'ai besoin de tester des sous-domaines sur mon hôte local. Comment puis-je effectivement avoir ce résultat d'ajouter *.localhost.com
à mon /etc/hosts/
fichier?
Si ce n'est pas possible, comment puis-je contourner ce problème? Je dois tester des sous-domaines génériques sur mon serveur local. Il s’agit d’un développeur Django, le serveur de développement Django peut-il gérer les sous-domaines? Un autre logiciel / routage peut-il me donner le résultat final souhaité?
Réponses:
J'ai écrit un proxy DNS en Python. Il lira les entrées génériques dans / etc / hosts. Voir ici: https://github.com/hubdotcom/marlon-tools/blob/master/tools/dnsproxy/dnsproxy.py
la source
pip install
:)Installez dnsmasq (je le fais de toute façon sur tous mes bureaux Linux en tant que cache DNS). En
dnsmasq.conf
plus la ligne:la source
sudo port install dnsmasq
2. éditer/opt/local/etc/dnsmasq.conf
3.sudo port load dnsmasq
192.168.50.11
mais le DNS ne résout pas. Des idées, cet exemple est-il correct pour les adresses IP "non-127.0.0.1"?/etc/NetworkManager/dnsmasq.d/dnsmasq-localhost.conf
, insérez-y la ligneaddress=/localhost.com/127.0.0.1
, puis redémarrez-le.Il n'est pas possible de spécifier des caractères génériques dans le
/etc/hosts
fichier. Spécifiez explicitement les noms d’hôte requis ou configurez un serveur de noms local avec les règles appropriées.la source
Vous devez configurer un serveur DNS et demander à chaque client de l' utiliser pour la résolution. Le serveur lui-même peut être aussi "léger" que Dnsmasq ou aussi lourd que BIND .
la source
--address=
section de la page de manuel dnsmasq.conf ne couvre pas le cas d'utilisation décrit ci-dessus?Flux de travail simple (pas besoin d'installer quoi que ce soit)
Personnellement, j'aime bien créer un fichier PAC pour cela et obliger mon navigateur à l'utiliser.
Étape 1: créer un fichier, par exemple:
*.proxy.pac*
quelque part (j'utilise mon$home
dossier)Étape 2: collez ce code (exemple, avec le port 8000):
Étape 3 : Faites en sorte que votre navigateur utilise ce fichier PAC.
Vidéo Youtube pour PAC et Firefox
Étape 4 : Vous pouvez maintenant tester votre application en accédant à:
http://mysubdomain.localhost/
Étape 5: Profitez :)
la source
wget
, ne seront pas affectés par cela). Ce n’est pas un problème en soi, mais il est peut-être préférable de le mentionner.req.url
s'agit désormais d'une URL absolue. Ceci est fait parce que l’hypothèse est que vous voulez écrire un serveur proxy réel, mais il est surprenant que vous utilisiez cette technique pour arrêter d’ajouter des entrées / etc / hosts pour le débogage. FYI à ceux qui pourraient aller dans la même voie que moi.J'ai rangé un de mes vieux projets:
https://github.com/airtonix/avahi-aliases
exigences:
Avantages par rapport à l'utilisation de Dnsmasq ou du proxy DNS python:
la source
Cette solution basée sur DNS fonctionnait parfaitement dans mon cas, sans rien installer: https://gist.github.com/fedir/04e60d679d5657d1f9f9aa10b3168282 (Mac OSX 10.9)
la source
Vous ne pouvez pas utiliser de caractère générique dans
/etc/hosts
.Jetez un coup d'œil ici pour découvrir la procédure à suivre sous OS X avec BIND, le serveur DNS intégré mais inactif, et Apache.
la source
Si vous souhaitez utiliser
dnsmasq
avecNetworkManager
vous pouvez (ou même doit?) Commencer àdnsmasq
partirNetworkManager
en ajoutantà
/etc/NetworkManager/NetworkManager.conf
. Ensuite, la configuration Dnsmasq va à/etc/NetworkManager/dnsmasq.conf
ou/etc/NetworkManager/dnsmasq.d/
resp.la source
Réponse courte:
Votre fichier / etc / hosts / ne vous laissera pas utiliser de jokers ou de numéros de port. Vous devrez créer une entrée pour chacun de vos sous-domaines.
la source
La réponse courte est que vous ne le faites pas. La réponse plus longue est que vous devez être plus clair sur ce que vous désirez réellement réaliser, car il existe peut-être une meilleure façon et une manière différente de la réaliser.
Pour l'hébergement Web (je ne l'ai jamais vu utilisé autrement), DNS est associé à un serveur Web prenant en charge l'hébergement virtuel. Pour plus d'informations sur les enregistrements DNS génériques (Wikipedia) et sur un article Hébergement de génériques avec Apache et Bind pour Linux à l'aide de bind et Apache.
Au pire, vous pourriez utiliser un serveur DNS local, je suppose.
la source
Une tâche courante pour ce sujet consiste à mapper des répertoires sur des sous-domaines. Un moyen très simple pour cela consiste à ajouter automatiquement les entrées basées sur les répertoires au fichier hosts:
la source
Merci tschundeee pour ce que je considère être la réponse ultime à cette question, j'aimerais pouvoir commenter, mais voici la configuration totale pour ceux qui essaient d'atteindre l'objectif initial (les caractères génériques pointant tous sur le même codebase - n'installez rien, environnement de développement, par exemple , XAMPP)
fichier hosts (ajouter une entrée)
fichier: / etc / hosts (non-windows)
Configuration de httpd.conf (enable vhosts)
fichier: /XAMPP/etc/httpd.conf
Configuration de httpd-vhosts.conf
fichier: XAMPP / etc / extra / httpd-vhosts.conf
redémarrer apache
créer un fichier pac:
enregistrez-le sous le nom que vous voulez.pac où vous voulez, puis chargez le fichier dans le réseau du navigateur> proxy> paramètres de configuration automatique (rechargez-le si vous le modifiez)
la source
Dnsmasq a travaillé pour moi, sauf que j'ai dû faire quelques pas supplémentaires.
Voici la procédure complète:
Ajouter
/etc/resolv.conf
avec la ligne suivanteAjoutez les lignes suivantes à
/etc/dnsmasq.conf
Redémarrez Dnsmasq
la source