Nginx动静分离简单实现示例讲解
简述
本文主要介绍如何实现Nginx动静分离。
动静分离
动静分离是根据一定规则把静态文件(html、css、js、jpg等)和动态文件(jsp,.do等)区分开来,采用静态文件和动态文件分开部署,以提高用户访问静态文件的速度,降低对后台应用的访问,提高服务器响应速度和性能。静态文件由Nginx服务器处理,直接获取磁盘文件,动态文件转发到应用服务器中处理,如Tomcat。
创建静态文件目录
[root@192 ~]# mkdir /soft/code/static/
将css、jpg文件上传至/soft/code/static目录中,如下图所示:

配置Nginx
upstream test {
ip_hash;
server 192.168.0.105:80;
}
server {
listen 80;
server_name 192.168.137.128;
#静态资源配置
location /static/ {
root /soft/code/;
autoindex on;
}
#动态资源配置
location /example {
proxy_pass http://test;
proxy_redirect default;
}
}
查看静态文件目录

测试文件
nginx.css文件:
/* 字体居中标红 */
p{
text-align:center;
color:red;
}
nginx.html文件:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="/static/nginx.css" type="text/css" />
<title>动态分离</title>
</head>
<body>
<p>Dynamic and static separation demo!</p>
<img src = "/static/nginx.jpg"/>
</body>
</html>
页面测试
将nginx.html文件放在Tomcat服务器中,启动Tomcat服务,访问http://nginx_ip:port/example/nginx.html,如下图所示:

注意事项
#访问/static/目录下的文件时,Nginx会去/soft/code/static/目录下找文件。
location /static/ {
root /soft/code/;
#列出整个目录
autoindex on;
}
Nginx启动命令:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
Nginx重启命令:
/usr/local/nginx/sbin/nginx -s reload
Nginx停止命令:
/usr/local/nginx/sbin/nginx -s stop
[root@192 ~]# cd /usr/local/nginx/logs/
[root@192 logs]# tail -f error.log
ok,以上就是Nginx动静分离简单实现示例讲解,看完记得转发、点赞和收藏。如果有错误,欢迎批评指正,感谢。
(云渺书斋)