Heim  >  Fragen und Antworten  >  Hauptteil

Servername funktioniert nicht, wenn Nginx den Server konfiguriert?

Warum funktioniert server_name bei der Konfiguration des Nginx-Servers nicht?

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;
           }
}

Das Obige ist mein Code. Der Servername und der Port sind unterschiedlich.


Aber als ich kaixuan.hehe.com:8000 besuchte, habe ich auch kaixuan.test.com eingegeben. [Achten Sie auf den Port]Wenn ich kaixuan.test.com besuche, kann ich auch kaixuan.hehe.com eingeben. Ist das normal?
Wenn das normal ist, wie können wir es online lösen? Einen Standard hinzufügen, damit er ihn standardmäßig eingeben kann?

我想大声告诉你我想大声告诉你2713 Tage vor1107

Antworte allen(1)Ich werde antworten

  • 高洛峰

    高洛峰2017-05-16 17:17:16

    对的,加一条默认的阻挡。

    当所有server的规则都不匹配时,nginx会采用第一条server配置,所以一般第一条server会使用阻止页面。

    server {
       listen 80;
       server_name _;
       
       return 404;
    }

    Antwort
    0
  • StornierenAntwort