Nginx基础配置之动静分离实现

首先先明确一点,动静分离所说的动态文件和静态文件是人为区分的,现在我们指定 /usr/www/snowman/first.html为动态文件,/usr/www/static/css/static_snowman.css为静态文件

一 基于目录动静分离

基本思路:访问 IP/static 的请求视为请求静态文件,直接访问IP视为访问其他文件,可根据具体需要更改
1.配置静态站点,静态文件都放这里边

mkdir -p /usr/www/static/css

2.创建一个你认为的静态文件

 echo the static file > /usr/www/static/css/static_snowman.css

3.配置nginx.conf
配置两个location实现动静分离
在这里插入图片描述
其中alias的作用与root类似,都是指定路径,但是使用alias不会将location的路径加上来,例如上图就是去/usr/www/static/css/路径找,如果换成root,就变成去/usr/www/static/static找了
访问静态文件192.168.66.64/static/css/static_snowman.css
在这里插入图片描述
访问192.168.66.64
在这里插入图片描述

二 基于正则动静分离

如果不想在输入地址的时候输入static,可以用正则动静分离
基本思路:访问IP/xxx/xxx/xxx.css,用正则匹配判断.css是我们指定的静态文件
配置nginx.conf

#正则
location ~* \.(jpg|css|js)$ {
root /usr/www/static;
}

在这里插入图片描述
这个配置的意思是匹配结尾为“jpg”或“css”或“js”就去/usr/www/static找文件
访问静态文件192.168.66.64/css/static_snowman.css(没有假/static/路径咯)
在这里插入图片描述

注:如果两种方式都存在且访问起冲突时,正则匹配优先

猜你喜欢

转载自blog.csdn.net/snow____man/article/details/83539294
今日推荐