设为首页 加入收藏

TOP

SpringCloud(九) - Nginx(一)
2023-07-25 21:32:03 】 浏览:62
Tags:SpringCloud Nginx

1、安装Nginx

1.1 解压上传安装包

解压# nginx-1.16.1.tar.gz


# nginx需要一些环境(全部执行,不存在的会执行,存在的会跳过)
yum install -y wget

yum install -y gcc-c++

yum install -y pcre pcre-devel

yum install -y openssl openssl-devel

yum install -y zlib zlib-devel

1.2 自定义安装目录安装

进入解压目录# cd nginx-1.16.1/

指定安装目录# ./configure --prefix=/usr/local/kh96/nginx

编译和安装# make && make install

#修改配置文件
进入安装目录# cd /usr/local/kh96/nginx

修改 server 下的 server_name localhost#server_name  1.117.75.57;

添加环境变量# echo 'export PATH=$PATH:/usr/local/kh96/nginx/nginx/sbin' >> /etc/profile

刷新环境变量# source /etc/profile

1.3 启动

启动# nginx

重启# nginx -s reload

停止# nginx -s stop

检查配置文件(nginx.conf)是否合法# nginx -t 

1.4 访问 (保证80端口开放)

访问服务器80端口:

如果80端口打开了但是还是访问不到的,可以注意一下防火墙,可能是防火墙打开的但是又没有打开80端口
# 方法一:关闭防火墙
查看防火墙状态(是否是running)# firewall-cmd --state

关闭防火墙# systemctl stop firewalld.service

设置禁止开启启动防火墙# systemctl disable firewalld.service

#方法二:开放端口
放行80端口: firewall-cmd --zone=public --add-port=80/tcp --permanent

重启防火墙# firewall-cmd --reload

2、Nginx反向代理

2.1 demo项目说明

2.1.1 后端模块

2.1.1.1 配置
#端口
server:
  port: 8080

# 项目发布路径
  servlet-path: /nginx-back
2.1.1.2 controller控制层
/**
 * Created On : 7/11/2022.
 * <p>
 * Author : huayu
 * <p>
 * Description: nginx后端提供的测试入口
 */
@Slf4j
@RestController
public class NginxBackController {

    /**
     * @author : huayu
     * @date   : 7/11/2022
     * @param  : []
     * @return : java.util.Map<java.lang.String,java.lang.Object>
     * @description : 后端查询学生信息列表
     */
    @PostMapping("/user/userInfos")
    public Map<String,Object> userInfos(HttpServletRequest request,Integer time){

        int serverPort = request.getServerPort();

        log.info("------ 第:{}次, 端口:{}, nginx 后端查询学生信息列表 ------",time,serverPort);

        //定义返回的学生列表结合
        Map<String, Object> contentMap = new HashMap<>();

        //模拟创建一个学生信息集合列表
        List<Map<String,Object>> userMap = new ArrayList<>();

        //模拟从数据库查询学生信息存入集合列表
        List<String> nameList = Arrays.asList("孙悟空","猪八戒","沙和尚");
        nameList.forEach(name->{
            Map<String, Object> user = new HashMap<>();
            user.put("name",name);
            user.put("age",200);
            user.put("hobby","nginx");

            //保存到返回的集合中
            userMap.add(user);

        });


        //将查询的学生信息,存入到我们返回大map集合中
        contentMap.put("content",userMap);

        //返回json格式的学生信息列表
        return contentMap;

    }

}

2.1.2 前端模块

2.1.2.1 home.html
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>人员信息</title>
</head>
<body>
	<p class="title" align="center">课工场学员信息</p>
	
	<div class="container">
		<table border="1" align="center" width="50%" cellspacing="0">
		<thead>
		  <tr>
			  <th>姓名</th>
			  <th>年龄</th>
			  <th>爱好</th>
		  </tr>
		</thead>
		<tbody id="content">
			<tr>
				<td></td>
				<td></td>
				<td></td>
		    </tr>
		</tbody>
		</table>
	</div>
	<div class="panel"></div>
&l
首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇一天吃透操作系统八股文 下一篇设计模式---责任链模式

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目