文章目录

  • ​​第一步:通过Xftp将ace-master到linux服务器/opt/static目录下,为了演示方便,将名字改为ace​​
  • ​​第二步:修改nginx.conf配置文件在server中​​
  • ​​第三步:重启nginx服务器​​
  • ​​第四步:成功访问​​
  • ​​测试:通过htp://192.168.235.128:80/ace/访问​​
  • ​​二、location中配置路径讲解​​
  • ​​2.1 location匹配顺序​​

第一步:通过Xftp将ace-master到linux服务器/opt/static目录下,为了演示方便,将名字改为ace

Nginx学习四:静态网站部署_正则

第二步:修改nginx.conf配置文件在server中

通过location匹配访问的路径,然后转发给静态资源

Nginx学习四:静态网站部署_服务器_02

第三步:重启nginx服务器

Nginx学习四:静态网站部署_linux_03

第四步:成功访问

Nginx学习四:静态网站部署_正则匹配_04

测试:通过htp://192.168.235.128:80/ace/访问

Nginx学习四:静态网站部署_nginx_05

二、location中配置路径讲解

Nginx学习四:静态网站部署_nginx_06

初次接触:可能会遇到404找不到页面的错误,主要原因是配置路径问题;
规则:ip + port 等于 root,假设server的配置如下:

server {
listen 80; #端口号
location / {
root /opt/static /ace; #静态文件路径
}
}
替换:
http://192.168.92.128:80/ = root = /opt/static/ace
http://192.168.92.128:80/ace = root/ace = /opt/static/ace/ace

2.1 location匹配顺序

在没有标识符的请求下,匹配规则如下:
1、nginx服务器首先在server块的多个location块中搜索是否有标准的uri和请求字符串匹配。如果有多个标准uri可以匹配,就匹配其中匹配度最高的一个location。

2、然后,nginx在使用location块中,正则uri和请求字符串,进行匹配。如果正则匹配成功,则结束匹配,并使用这个location处理请求;如果正则匹配失败,则使用标准uri中,匹配度最高的location。
备注:

1、如果有精确匹配,会先进行精确匹配,匹配成功,立刻返回结果。
2、普通匹配与顺序无关,因为按照匹配的长短来取匹配结果。
3、正则匹配与顺序有关,因为是从上往下匹配。(首先匹配,就结束解析过程)
4、在location中,有一种统配的location,所有的请求,都可以匹配,如下:
location / {
# 因为所有的地址都以 / 开头,所以这条规则将匹配到所有请求
# 但是正则和最长字符串会优先匹配
}
结合标识符,匹配顺序如下:
(location =) > (location 完整路径) > (location ^~ 路径) > (location ~,~* 正则顺序) > (location 部分起始路径) > (location /)

(精确匹配)> (最长字符串匹配,但完全匹配) >(非正则匹配)>(正则匹配)>(最长字符串匹配,不完全匹配)>(location通配)