Server_name ne fonctionne pas lorsque nginx configure le serveur ?
我想大声告诉你
我想大声告诉你 2017-05-16 17:15:16
0
1
1168

Pourquoi server_name ne fonctionne-t-il pas lors de la configuration du serveur nginx ?

server {
           listen 8000;
           server_name kaixuan.test.com;
           root /data1/htdocs/kaixuan.test.com/;
           location ~ \.php$ {
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
                include        fastcgi_params;
           }
           location / {
                 index index.html;
           }
}

server {
           listen 80;
           server_name kaixuan.hehe.com;
           root /data1/htdocs/kaixuan.hehe.com/;
           location ~ \.php$ {
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
                include        fastcgi_params;
           }
           location / {
                 index index.html;
           }
}

Ce ci-dessus est mon code. J'ai configuré deux serveurs. Le nom du serveur et le port sont différents


Mais lorsque j'ai visité kaixuan.hehe.com:8000, j'ai également entré kaixuan.test.com. [Faites attention au port]De même, lorsque je visite kaixuan.test.com, je peux également accéder à kaixuan.hehe.com. Est-ce normal ?
Si cela est normal, comment pouvons-nous le résoudre en ligne ? En ajouter un par défaut pour qu'il puisse le saisir par défaut ?

我想大声告诉你
我想大声告诉你

répondre à tous(1)
小葫芦

Oui, ajoutez un bloqueur par défaut.

Lorsque les règles de tous les serveurs ne correspondent pas, nginx utilisera la première configuration du serveur, donc généralement le premier serveur utilisera la page de blocage.

server {
   listen 80;
   server_name _;
   
   return 404;
}
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal