J’ai une entrée DNS générique, donc * .mydomain.tld est dirigé vers mon serveur. J’utilise nginx J’ai 2 fichiers conf intitulés:
Mes fichiers de configuration ressemblent à ceci:
défaut:
server { listen 80; listen [::]:80 default_server ipv6only=on; root /var/www/website; index index.html index.htm; server_name _; location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $uri/ /index.html; } }
myconf.conf:
server { listen 80; #listen [::]:80 default_server ipv6only=on; root /home/me/www/website; index index.php index.html index.htm; # Make site accessible from http://localhost/ # orig # server_name localhost; server_name me.mydomain.tld; access_log /home/me/logs/me.mydomain.tld.access.log; error_log /home/me/logs/me.mydomain.tld.error.log warn; location / { try_files $uri $uri/ $uri.php?$args; } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; # With php5-fpm: fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } }
Lorsque je navigue vers les domaines comme suit, ce sont les fichiers de configuration qui se chargent.
Qu’est-ce qui ne va pas que le défaut n’est pas le fourre-tout qu’il devrait être? Any.mydomain.tld devrait charger le répertoire racine dans le fichier de configuration par défaut.
Dans votre fichier de configuration par défaut, vous devez spécifier default_server
sur les deux lignes d’ listen
; De plus, vous devez supprimer la ligne server_name
:
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /var/www/website; index index.html index.htm; #server_name _; location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $uri/ /index.html; } }
Le trait de soulignement que vous utilisez pour server_name
n’est pas réellement un caractère générique (si c’était votre intention). À partir de la documentation nginx Server Names :
Il n’y a rien de spécial à propos de ce nom, il ne s’agit que de l’un des nombreux noms de domaine invalides qui ne se croisent jamais avec un vrai nom. D’autres noms non valides comme “-” et “! @ #” Peuvent également être utilisés.