Rumah pembangunan bahagian belakang tutorial php nginx的server_name配置 实战nginx nginx反向代理 nginx是什

nginx的server_name配置 实战nginx nginx反向代理 nginx是什

Jul 29, 2016 am 08:53 AM
nginx server

1server_name指令主要用于配置基于名称虚拟主机(在http > server 里面),server_name指令在接到请求后的匹配顺序分别为:

1.准确的server_name匹配,例如:

server {

listen 80;

server_namessdr.info www.ssdr.info;

...

}

2.*通配符开始的字符串:

server {

listen 80;

server_name*.ssdr.info;

...

}

3.*通配符结束的字符串:

server {

listen 80;

server_name www.*;

...

}

4.匹配正则表达式:

server {

listen 80;

server_name~^(?.+)\.howtocn\.org$;

...

}

nginx将按照1,2,3,4的顺序对servername进行匹配,只有有一项匹配以后就会停止搜索

 

2)在一个server块中为一个站点配置多个二级域名

实际网站目录结构中我们通常会为站点的二级域名独立创建一个目录,同样我们可以使用正则的捕获来实现在一个server块中配置多个二级域名:

server

   {

     listen       80;

     server_name  ~^(.+)?\.domain\.com$;

     index index.html;

     if ($host = domain.com){

         rewrite ^ http://www.domain.com permanent;

     }

     root /data/wwwsite/domain.com/$1/;

   }

站点的目录结构应该如下:

/data/wwwsite/domain.com/www/

/data/wwwsite/domain.com/nginx/

这样访问www.domain.comroot目录为/data/wwwsite/domain.com/www/nginx.domain.com时为/data/wwwsite/domain.com/nginx/,以此类推。

后面if语句的作用是将domain.com的方位重定向到www.domain.com,这样既解决了网站的主目录访问,又可以增加seo中对www.domain.com的域名权重。

3)多个正则表达式:

如果你在server_name中用了正则,而下面的location字段又使用了正则匹配,这样将无法使用$1$2这样的引用,解决方法是通过set指令将其赋值给一个命名的变量:

server

{

   listen 80;

   server_name ~^(.+)?\.howtocn\.org$;

   set $www_root $1;

   root /data/wwwsite/ssdr.info/$www_root/;

   location ~ .*\.php?$ {

      fastcgi_pass 127.0.0.1:9000;

      fastcgi_index index.php;

      fastcgi_param SCRIPT_FILENAME/data/wwwsite/ssdr.info/$fastcgi_script_name;

      include fastcgi_params;

   }

}

以上就介绍了nginx的server_name配置,包括了server,nginx方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk membenarkan akses rangkaian luaran ke pelayan tomcat Bagaimana untuk membenarkan akses rangkaian luaran ke pelayan tomcat Apr 21, 2024 am 07:22 AM

Bagaimana untuk membenarkan akses rangkaian luaran ke pelayan tomcat

Apakah perintah mula dan henti nginx? Apakah perintah mula dan henti nginx? Apr 02, 2024 pm 08:45 PM

Apakah perintah mula dan henti nginx?

Bagaimana untuk menjalankan thinkphp Bagaimana untuk menjalankan thinkphp Apr 09, 2024 pm 05:39 PM

Bagaimana untuk menjalankan thinkphp

Cara memasang, menyahpasang dan menetapkan semula sandaran pelayan Windows Cara memasang, menyahpasang dan menetapkan semula sandaran pelayan Windows Mar 06, 2024 am 10:37 AM

Cara memasang, menyahpasang dan menetapkan semula sandaran pelayan Windows

Cara mendaftar phpmyadmin Cara mendaftar phpmyadmin Apr 07, 2024 pm 02:45 PM

Cara mendaftar phpmyadmin

Selamat datang ke nginx! Bagaimana untuk menyelesaikannya? Selamat datang ke nginx! Bagaimana untuk menyelesaikannya? Apr 17, 2024 am 05:12 AM

Selamat datang ke nginx! Bagaimana untuk menyelesaikannya?

Bagaimana untuk menyelesaikan masalah nginx semasa mengakses laman web Bagaimana untuk menyelesaikan masalah nginx semasa mengakses laman web Apr 02, 2024 pm 08:39 PM

Bagaimana untuk menyelesaikan masalah nginx semasa mengakses laman web

Bagaimana untuk menggunakan projek nodejs ke pelayan Bagaimana untuk menggunakan projek nodejs ke pelayan Apr 21, 2024 am 04:40 AM

Bagaimana untuk menggunakan projek nodejs ke pelayan

See all articles