Nginx的反向代理
1 查看与nginx有关的所有文件
whereis nginx
2 进入/etc/nginx/conf.d 创建文件cloud.conf
touch /etc/nginx/conf.d/cloud.conf
3 编辑cloud.conf
加入内容:
#给集群起个名字
upstream cloud4{
#指定每个服务器的url
server 192.168.198.131:8080;
server 192.168.198.134:8080;
server 192.168.198.135:8080;
}
#定义server 指定url的转换规则
server
{
listen 80; #指定nginx监听的端口
server_name 192.168.198.131;#指定nginx的虚拟机ip
location /maven_cloud4{ #指定对nginx的/maven_cloud4的请求 按下面的规则进行转换
proxy_pass http://cloud4/maven_cloud4; #指定转换规则
proxy_cookie_path /maven_cloud4 /maven_cloud4; #解决cookie的跨域问题
}
}
4 重启ngixn:
systemctl restart nginx
5 通过浏览器访问: 192.168.198.131:80/maven_cloud4
upstream cloud4{
server 192.168.198.131:8080;
server 192.168.198.134:8080;
server 192.168.198.135:8080;
}
server
{
listen 80;
server_name 192.168.198.131;
location /mc4{
proxy_pass http://cloud4/maven_cloud4;
proxy_cookie_path /maven_cloud4 /mc4;
}
}
改进:
1 修改cloud.config为cloud.conf
2 更改cloud.conf的内容:取消所有注释;更改nginx的项目路径为mc4
location /mc4{
proxy_pass http://cloud4/maven_cloud4;
proxy_cookie_path /maven_cloud4 /mc4;
}
3 修改项目:
>>baseUrl更改为nginx的url:index.html中所有的style/script标签的url都定义为相对当前资源的路径
给所有的style标签和script标签 添加type属性
4 重新打包:并重新命名为maven_cloud4
关闭tomcat:删除已有的两个maven_cloud4
文件夹和maven_cloud4.war文件
复制到三个服务器的tomcat的webapps下:重启tomcat
5 测试
准备:三个服务器:先判断防火墙是否关闭
再判断tomcat是否开启:通过浏览器:ip:8080/maven_cloud4
再判断master的nginx是否开启
注意事项
1 防火墙必须关闭:三个服务器的防火墙必须关闭
systemctl stop firewalld
systemctl status firewalld
firewall-cmd --state
2 nginx所在的服务器的selinux必须关闭
3 tomcat的webapps下必须有maven_cloud4.war
(上传时把里面的maven_cloud4文件夹和maven_cloud4。war删除)
4 开启所有的tomcat:
由ip:8080/maven_cloud4通过tomcat访问
5 安装完nginx 通过ip:80访问nginx的首页 看看welcome
6 配置/etc/nginx/conf.d/cloud.conf(注意名字不能是:cloud.config)
upstream cloud4{
server 192.168.198.131:8080;
server 192.168.198.134:8080;
server 192.168.198.135:8080;
}
server
{
listen 80;
server_name 192.168.198.131;
location /mc4{
proxy_pass http://cloud4/maven_cloud4;
proxy_cookie_path /maven_cloud4 /mc4;
}
}