J'ai récemment voulu pointer tous les sous-domaines d'un domaine de test, par exemple exemple.com vers l'hôte local. Existe-t-il un moyen de pointer toutes les requêtes sur * .example.com pour les résoudre en 127.0.0.1
Il arrive que le fichier /etc/hosts
Ne supporte pas les entrées avec caractères génériques.
Vous devrez utiliser d'autres services comme Dnsmasq. Pour l'activer dans dnsmasq, éditez simplement dnsmasq.conf
Et ajoutez la ligne suivante:
address=/example.com/127.0.0.1
Voici la configuration pour ceux qui essaient d’atteindre l’objectif initial (les caractères génériques pointant tous sur la même base de code - rien installer, c’est-à-dire XAMPP)
fichier:/etc/hosts (non-windows)
127.0.0.1 example.local
fichier: /XAMPP/etc/httpd.conf
# Virtual hosts
Include etc/extra/httpd-vhosts.conf
fichier: XAMPP/etc/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/path_to_XAMPP/htdocs"
ServerName example.local
ServerAlias *.example.local
# SetEnv APP_ENVIRONMENT development
# ErrorLog "logs/example.local-error_log"
# CustomLog "logs/example.local-access_log" common
</VirtualHost>
redémarrer Apache
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)
function FindProxyForURL(url, Host) {
if (shExpMatch(Host, "*example.local")) {
return "PROXY example.local";
}
return "DIRECT";
}
tilisez dnsmasq
en prétendant utiliser une dist basée sur Debian (ubuntu, menthe ..), vérifiez si elle est installée avec
(Sudo) systemctl status dnsmasq
Si il est juste désactivé le démarrer avec
(Sudo) systemctl start dnsmasq
Si vous devez l'installer, écrivez
(Sudo) apt-get install dnsmasq
Pour définir des domaines pour résoudre edit /etc/dnsmasq.conf
comme ça
address=/example.com/127.0.0.1
pour résoudre * .example.com
! Vous devez recharger dnsmasq pour prendre effet pour les modifications!
systemctl reload dnsmasq