本文实验内容nginx+tomcat实现网站的动静分离功能
案例环境
主机信息
架构图
案例实施:
部署tomcat服务器
两台tomcat服务器上准备jdk和tomcat
jdk下载
tomcat下载
1
2
3
4
|
mkdir /tools cd /tools ls apache-tomcat-8.5.70. tar .gz jdk-8u181-linux-x64. tar .gz |
安装jdk
1
2
3
4
5
6
7
8
9
10
11
12
13
|
mkdir -p /app/java tar xf jdk-8u181-linux-x64. tar .gz -c /app/ ln -s /app/jdk1 .8.0_181/ /app/jdk vim /etc/profile export java_home= /app/jdk export classpath=.:$java_home /lib/tools .jar:$java_home /lib/dt .jar export path=$path:$java_home /bin source /etc/profile java -version java version "1.8.0_181" java(tm) se runtime environment (build 1.8.0_181-b13) java hotspot(tm) 64-bit server vm (build 25.181-b13, mixed mode) |
部署tomcat
1
2
|
tar xf apache-tomcat-8.5.70. tar .gz -c /app ln -s /app/apache-tomcat-8 .5.70/ /app/tomcat |
启动tomcat并测试,tomcat默认启动8080端口
1
2
3
|
/app/tomcat/bin/startup .sh ss -anpt | grep 8080 listen 0 100 [::]:8080 [::]:* users :(( "java" ,pid=2375,fd=52)) |
看到上面这个页面说明部署成功
创建tomcat01站点主页
1
2
3
4
5
6
7
8
9
10
11
12
|
rm -rf /app/tomcat/webapps/root/* cat /app/tomcat/webapps/root/index.jsp <%@ page language="java" import="java.util.*” pageencoding="utf-8"%> < html > < head > < title >tomcat01</ title > </ head > < body > <% out.println("192.168.10.4,tomcat01");%> < img src = "3333.jpg" /> </ body > </ html > |
创建womcat02站点主页
1
2
3
4
5
6
7
8
9
10
11
12
|
rm -rf /app/tomcat/webapps/root/* cat /app/tomcat/webapps/root/index.jsp <%@ page language="java" import="java.util.*“ pageencoding="utf-8"%> < html > < head > < title >tomcat02</ title > </ head > < body > <% out.println("192.168.10.5,tomcat02");%> < img src = "3333.jpg" /> </ body > </ html > |
两台tomcat服务器重启服务
1
2
|
/app/tomcat/bin/shutdown .sh /app/tomcat/bin/startup .sh |
部署nginx服务器
安装nginx依赖
1
|
yum -y install gcc gcc-c++ autoconf pcre-devel make automake httpd-tools enopssl-devel |
配置nginx软件源
1
2
3
4
5
6
7
8
|
cat /etc/yum .repos.d /nginx .repo [nginx-stable] name=nginx stable repo baseurl=http: //nginx .org /packages/centos/ $releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https: //nginx .org /keys/nginx_signing .key module_hotfixes= true |
安装nginx服务并启动
1
2
3
4
|
yum clean all yum makecache yum -y install nginx systemctl enable --now nginx |
yum安装的nginx已启用配置文件分离功能,我们使用默认的配置文件
1
2
3
4
5
6
7
|
cat /etc/nginx/nginx .conf include /etc/nginx/conf .d/*.conf; # 修改默认配置文件 vim /etc/nginx/conf .d /default .conf server { listen 80; server_name 192.168.10.3; |
创建站点首页
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
cd /usr/share/nginx/html/ # 准备一张图片 ls 3333.jpg 50x.html index.html # 配置站点首页 vim index.html <!doctype html> <html> < head > <title>welcome to nginx!< /title > <style> body { width: 35em; margin: 0 auto; font-family: tahoma, verdana, arial, sans-serif; } < /style > < /head > <body> <img src= "3333.jpg" /> < /body > < /html > |
重启nginx服务
1
|
systemctl reload nginx |
呐,图片
部署nginx-lb服务器
安装步骤与nginx01前三步相同
创建负载均衡配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
vim /etc/nginx/conf .d /proxy .conf upstream tomcat { server 192.168.10.4:8080; server 192.168.10.5:8080; } upstream static { server 192.168.10.3:80; } server { listen 80; server_name 192.168.10.2; location / { proxy_pass http: //tomcat ; } location ~* .*\.(png|gif|jpg)$ { proxy_pass http: //static ; } } |
重启nginx服务
1
2
3
4
|
nginx -t nginx: the configuration file /etc/nginx/nginx .conf syntax is ok nginx: configuration file /etc/nginx/nginx .conf test is successful systemctl reload nginx |
原理为默认会访问tomcat后端服务器,但当网页中有静态图片时会在static后端中访问
访问测试:达到一个负载均衡且动静分离的效果
以上就是服务器的负载均衡nginx+tomcat实现动静分离的详细内容,更多关于负载均衡nginx+tomcat动静分离的资料请关注服务器之家其它相关文章!
原文链接:https://yyang.blog.csdn.net/article/details/122643527