欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 会展 > Nginx11-动静分离

Nginx11-动静分离

2024/10/23 15:24:29 来源:https://blog.csdn.net/liyou123456789/article/details/142904475  浏览:    关键词:Nginx11-动静分离

零、文章目录

Nginx11-动静分离

1、动静分离

(1)动静分离是什么
  • 动:后台应用程序的业务处理
  • 静:网站的静态资源(html,javaScript,css,images 等文件)
  • 分离:将两者进行分开部署访问,提供用户进行访问。就是以后所有和静态资源相关的内容都交给Nginx来部署访问,非静态内容则交个类似于Tomcat的服务器来部署访问。
(2)为什么要动静分离
  • Nginx在处理静态资源的时候,效率是非常高的,而且Nginx的并发访问量也是名列前茅,而Tomcat则相对比较弱一些,所以把静态资源交个Nginx后,可以减轻Tomcat服务器的访问压力并提高静态资源的访问速度。
  • 动静分离以后,降低了动态资源和静态资源的耦合度。如动态资源宕机了也不影响静态资源的展示。
(3)如何实现动静分离
  • 实现动静分离的方式很多,比如静态资源可以部署到 CDN、Nginx 等服务器上,动态资源可以部署到 Tomcat、weblogic 或者 websphere 上。
  • 这里使用 Nginx + Tomcat 来实现动静分离。

image-20241009210039068

2、环境准备

(1)Tomcat安装
  • 在服务器192.168.119.162安装Tomcat

  • 更换yum源

# 备份原有的 Yum 源配置文件
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup# 下载新的 Yum 源配置文件,你可以选择使用阿里云、网易、腾讯云等国内镜像源。以下是使用阿里云作为例子的命令
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo# 清理YUM缓存并重建缓存
sudo yum clean all
sudo yum makecache
  • Tomcat需要Java环境,所以首先需要安装Java
sudo yum install java-1.8.0-openjdk-devel
  • 安装Tomcat
# 创建目录
mkdir /opt/tomcat
cd /opt/tomcat# 下载tomcat后上传服务器/opt/tomcat
# 百度网盘地址:https://pan.baidu.com/s/1FCpAq6qwp8oCYPyr_ct1QQ?pwd=1234# 解压tomcat
sudo tar -zxvf apache-tomcat-9.0.96.tar.gz -C /opt/# 启动Tomcat
/opt/apache-tomcat-9.0.96/bin/startup.sh# 检查Tomcat是否启动
/opt/apache-tomcat-9.0.96/bin/catalina.sh status# 关闭tomcat
/opt/apache-tomcat-9.0.96/bin/shutdown.sh# 防火墙设置
# 如果服务器有防火墙,需要开放Tomcat的端口(默认是8080)
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
# 或者直接关闭防火墙
sudo systemctl stop firewalld
sudo systemctl disable firewalld
  • 在浏览器中输入http://192.168.119.162:8080/,如果看到Tomcat的欢迎页面,说明Tomcat已经成功安装。

image-20241009210840792

(2)Nginx安装
  • 在服务器192.168.119.161安装Nginx
  • 参考Nginx在Linux下安装篇:https://blog.csdn.net/liyou123456789/article/details/142745399

3、动静分离实现

(1)需求

image-20241009214431888

(2)Nginx服务器创建静态文件
  • 在192.168.119.161服务器上创建静态文件夹,将图片文件放入
# 创建静态文件夹,把图片Nginx.jpeg上传到目录/usr/local/nginx/html/static
mkdir /usr/local/nginx/html/static# 完成后文件树如下
[root@localhost ~]# tree /usr/local/nginx/html/static
/usr/local/nginx/html/static
└── Nginx.jpeg
(3)Nginx服务器配置文件
  • 在192.168.119.161服务器上配置Nginx
worker_processes  1;events {worker_connections  1024;
}http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;upstream webservice{server 192.168.119.162:8080;}server {listen       80;server_name  localhost;        #动态资源location / {proxy_pass http://webservice;}#静态资源location ~/.*\.(png|jpg|jpeg|gif|js){root html/static;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}
}
(4)资源访问
  • 动态资源访问:http://192.168.119.161/,访问的是Tomcat服务器上的网页

image-20241010103153594

  • 静态资源访问:http://192.168.119.161/Nginx.jpeg,访问的是Nginx服务器上的图片

image-20241010103350238

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com