Mengapa nama server tidak berfungsi semasa mengkonfigurasi pelayan 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;
}
}
Di atas adalah kod saya. Saya telah mengkonfigurasi dua pelayan dan port adalah berbeza
Tetapi apabila saya melawat kaixuan.hehe.com:8000, saya juga memasuki kaixuan.test.com. [Perhatikan pelabuhan]Begitu juga, bila saya melawat kaixuan.test.com, saya juga boleh masuk ke kaixuan.hehe.com Adakah ini normal?
Jika ini perkara biasa, bagaimana kita boleh menyelesaikannya secara dalam talian? Tambahkan yang lalai supaya dia boleh memasukkannya secara lalai?
Ya, tambahkan penyekat lalai.
Apabila peraturan semua pelayan tidak sepadan, nginx akan menggunakan konfigurasi pelayan pertama, jadi secara amnya pelayan pertama akan menggunakan halaman penyekat.