1.多个server的优先级
以每个server区块都监听80端口为例,www.pm.com对应服务器ip地址,匹配顺序为:
①server_name和www.pm.com完全相同的区块。
②server_name为 *.pm.com 的区块。(通配符在前)
③server_name为 pm.* 的区块。(通配符在后)
④server_name使用正则表达式并能匹配上www.pm.com的区块。
⑤如果都没有匹配到,将选择 listen 80 default_server;的区块。
⑥如果没有第5项,则选择之一个配置文件的之一个server区块。
访问域名www.pm.com就是优先选择上面的server。
如果此时以ip访问,在请求头中的Host字段的值就是192.168.1.7,无法匹配到server_name,就会按照规则匹配到下面的那个server。
2.禁止IP访问
禁止IP访问可以防止别人恶意将域名解析到自己的IP上。
两种形式:
注:之一种 *** 必须使用 default_server,如果别的地方要用default_server,可以用第二种 *** 的形式。
3.多用include(写好注释)
一台服务器配置多个server网站,会导致主配置文件nginx.conf非常臃肿,可读性变差,则可以多使用include *** ,简化主配置文件,便于运维人员维护。
4.使用alias保护网站真实目录结构
当我们以http://www.pm.com/image/logo.png访问该图片时,按常规来说,访问者就知道了该图片的路径位置
location /image {
root /pm_code;
}
对应的路径为 /pm_code/image/
当使用alias时:
location /image {
alias /pm_code;
}
此时图片真实的位置是在/pm_code下,/image是一个虚拟目录,alias后面是绝对目录路径。
5.error_page的配置
模拟404报错
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。