nginx配置静态资源

业务场景:

app端的同事想要隐私协议和用户协议的h5静态资源,以方便用户点进去查看。

解决办法:

当时我有两个想法,一个是用web服务器配置静态资源,另外一个用nginx配置静态资源。

评估了一下,因当前项目用的技术架构前后端分离,用nginx做的反向代理和webpack打包的前端静态页面,并没有用到web服务器。所以最后选择了用nginx。

具体的操作:

进入nginx软件目录下,找到nginx.conf 文件,

vi命令打开此文件。

添加如下信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
ini复制代码server {
listen 8091;
server_name localhost;

location /private {
alias html;
index index.html index.htm;
}

location /user {
alias test;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}

}

这里解释一下,上面配置的含义:

listen 代表监听的端口

server_name 代表监听的域名,没有的话一般默认localhost

location /private 代表拦截url为http://ip:8091/private/的请求

alias 为别名 也可以设置为root其区别是root相当于default

alias 后面的html代表与nginx.conf 同一级别的静态资源目录

index 代表html文件的index.html作为首页。

location /use同理

重启nginx的坑:

部署时,先停止nginx进程再进行启动nginx。若直接执行./sbin/nginx -s reload 进行重启,亲测一般不会有效果

先执行停止nginx进程,再进行启动:

ps -ef|grep nginx 查询nginx的进程号,一般有两条,选以maste开头的那条。

kill -TERM xxx 杀死进程xxx,比暴力的命令“kill -9”稍微好些。

./sbin/nginx -c /usr/local/nginx/nginx.conf 启动nginx的命令。

本文转载自: 掘金

开发者博客 – 和开发相关的 这里全都有

0%