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

php中文网
发布: 2016-07-29 08:53:28
原创
1702人浏览过

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;

钉钉 AI 助理
钉钉 AI 助理

钉钉AI助理汇集了钉钉AI产品能力,帮助企业迈入智能新时代。

钉钉 AI 助理 21
查看详情 钉钉 AI 助理

     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教程有兴趣的朋友有所帮助。

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号