nginx+tomcat集群+https

2023-11-06

nginx+tomcat集群

一、nginx安装

1、安装nginx需要的依赖包
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
2、下载nginx安装包
wget http://nginx.org/download/nginx-1.16.1.tar.gz

tar -xvf nginx-1.16.1.tar.gz

3、nginx安装
cd ./nginx-1.16.1/

./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module

//编译安装
make && make install
4、nginx配置文件路径

/usr/local/nginx/conf/nginx.conf

5、检测是否安装成功

/usr/local/nginx/sbin/nginx

命令 作用
nginx 启动服务
nginx -s reload 重载服务
nginx -s stop 停止服务

在这里插入图片描述

二、tomact安装

1、下载
cd /usr

wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.96/bin/apache-tomcat-7.0.96.tar.gz

//解压缩
tar -xvf  apache- tomcat-7.0.96.tar.gz

//重命名为 tomcat7
 mv apache-tomcat-7.0.96 tomcat7
 
//启动测试
/usr/tomcat7/bin/startup.sh

//访问localhost:8080 ,测试是否安装成功

2、集群tomcat的配置

vi /usr/tomcat7/webapps/ROOT/index.jsp

//复制一份tomcat

 cp -r tomcat7 ./tomcat7-1
 vi ./tomcat7-1/webapps/ROOT/index.jsp

修改Home为8081,方便标识

修改tomcat7-1的配置文件(共三处)
<Server port="8006" shutdown="SHUTDOWN">

<Connector port="8081" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />


<Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />

三、nginx配置 http集群

1、修改nginx 配置文件

vi /usr/local/nginx/conf/nginx.conf //添加如下信息

   #gzip  on;
upstream mytomcats{
	  server localhost:8080 weight=1; #weight权重
      server localhost:8081 weight=1;
     }
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
            proxy_pass http://mytomcats;
        }
2、重载nginx
访问localhost 测试是否可以达到负载 刷新页面,Home8080或者Home8081交替变化,(默认负载均衡策略:轮询

四、同时支持http和https

证书需手动申请,放置到服务器目录下,可用 acme.sh 申请免费证书

server {
        listen       443 ssl;
        server_name  你的域名或ip;

        ssl_certificate      /ca/server/server.crt;
        ssl_certificate_key  /ca/server/server.key;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;
        ssl_protocols  SSLv2 SSLv3 TLSv1;
        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location / {
            root   html;
            index  index.html index.htm;
                proxy_pass http://mytomcats;
        }
    }

五、强制https

server {
listen 80;
server_name 域名或ip;
#rewrite ^(.*) https://$server_name$1 permanent;
rewrite ^(.*)$  https://$host$1 permanent;
}

六、关闭404无用日志

在server{…}添加如下内容

location = /favicon.ico {
log_not_found off;
access_log off;
}

七、参考内容

https://www.cnblogs.com/saneri/p/5391821.html
https://www.cnblogs.com/fengyuduke/p/11232662.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

nginx+tomcat集群+https 的相关文章

  • 如何通过替换为空页映射来取消映射 mmap 文件

    Linux 用户空间有没有办法用空页面 映射自 dev null 或者可能是一个空页面 重复映射到从文件映射的页面的顶部 对于上下文 我想找到这个 JDK bug 的修复 https bugs openjdk java net browse
  • 跟踪 Linux 程序中活跃使用的内存

    我想跟踪各种程序在特定状态下接触了多少内存 例如 假设我有一个图形程序 最小化时 它可能会使用更少的内存 因为它不会重新绘制窗口 这需要读取图像和字体并执行大量库函数 这些对象仍然可以在内存中访问 但实际上并没有被使用 类似的工具top它们
  • Logrotate - nginx 日志不在 docker 容器内旋转

    我有一个运行 nginx 的 docker 容器 它正在将日志写入 var log nginxLogrotate 安装在 docker 容器中 并且 nginx 的 logrotate 配置文件已正确设置 尽管如此 logrotate 仍不
  • 如何禁用 GNOME 桌面屏幕锁定? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何阻止 GNOME 桌面在几分钟空闲时间后锁定屏幕 我已经尝试过官方手册了在红帽 https access redhat com doc
  • 为什么 Linux perf 使用事件 l1d.replacement 来处理 x86 上的“L1 dcache misses”?

    在英特尔 x86 上 Linux用途 https stackoverflow com a 52172985 149138事件l1d replacements来实施其L1 dcache load misses event 该事件定义如下 计数
  • 如何使用 net/http 验证 ruby​​ 中的 SSL 证书链

    我如何验证网站的证书 例如https processing ukash com https processing ukash com 在 ruby 中使用 net http https Net HTTP new processing uka
  • 为什么内核需要虚拟寻址?

    在Linux中 每个进程都有其虚拟地址空间 例如 32位系统为4GB 其中3GB为进程保留 1GB为内核保留 这种虚拟寻址机制有助于隔离每个进程的地址空间 对于流程来说这是可以理解的 因为有很多流程 但既然我们只有 1 个内核 那么为什么我
  • Linux中的CONFIG_OF是什么?

    我看到它在很多地方被广泛使用 但不明白在什么场景下我需要使用它 What is 配置 OF OF 的全名是什么 打开固件 这是很久以前发明的 当时苹果公司正在生产基于 PowerPC CPU 的笔记本电脑 而 Sun Microsystem
  • 如何在android网络库(ION)中使用自签名SSL?

    使用此网络库 https github com koush ion https github com koush ion 由于当前状态是开发 我想使用自签名 SSL 证书 图书馆论坛有一些讨论 https github com koush
  • 我可以从命令行打印 html 文件(带有图像、css)吗?

    我想从脚本中打印带有图像的样式化 html 页面 谁能建议一个开源解决方案 我使用的是 Linux Ubuntu 8 04 但也对其他操作系统的解决方案感兴趣 你可以给html2ps http user it uu se jan html2
  • 在哪里可以找到并安装 pygame 的依赖项?

    我对 Linux 比较陌生 正在尝试安装 python 的 pygame 开发环境 当我运行 setup py 时 它说我需要安装以下依赖项 我找到并安装了其中之一 SDL 然而 其他人则更加难以捉摸 Hunting dependencie
  • fopen 不返回

    我在 C 程序中使用 fopen 以只读模式 r 打开文件 但就我而言 我观察到 fopen 调用没有返回 它不返回 NULL 或有效指针 执行在 fopen 调用时被阻止 文件补丁绝对正确 我已经验证过 并且不存在与权限相关的问题 任何人
  • 如何有效截断文件头?

    大家都知道truncate file size 函数 通过截断文件尾部将文件大小更改为给定大小 但是如何做同样的事情 只截断文件的尾部和头部呢 通常 您必须重写整个文件 最简单的方法是跳过前几个字节 将其他所有内容复制到临时文件中 并在完成
  • nslookup 报告“无法解析 '(null)': 名称无法解析”,尽管它成功解析了 DNS 名称

    我在 ubuntu 上 并且正在运行 docker 默认桥接网络 我有 Zookeeper kafka 的容器化版本 以及我编写的与 kafka 对话的应用程序 I do a docker exec it
  • arm64和armhf有什么区别?

    Raspberry Pi Type 3 具有 64 位 CPU 但其架构不是arm64 but armhf 有什么区别arm64 and armhf armhf代表 arm hard float 是给定的名称Debian 端口 https
  • Discord.net 无法在 Linux 上运行

    我正在尝试让在 Linux VPS 上运行的 Discord net 中编码的不和谐机器人 我通过单声道运行 但我不断收到此错误 Unhandled Exception System Exception Connection lost at
  • 如何在Linux内核源代码中打印IP地址或MAC地址

    我必须通过修改 Linux 内核源代码来稍微改变 TCP 拥塞控制算法 但为了检查结果是否正确 我需要记录 MAC 或 IP 地址信息 我使用 PRINTK 函数来打印内核消息 但我感觉很难打印出主机的MAC IP地址 printk pM
  • 安装J语言的JQt IDE,出现错误

    我一直按照这里的说明进行操作 http code jsoftware com wiki System Installation Linux http code jsoftware com wiki System Installation L
  • 有谁知道在哪里定义硬件、版本和序列号。 /proc/cpuinfo 的字段?

    我想确保我的 proc cpuinfo 是准确的 目前它输出 Hardware am335xevm Revision 0000 Serial 0000000000000000 我可以在代码中的哪里更改它以给出实际值 这取决于 Linux 的
  • jpegtran 优化而不更改文件名

    我需要优化一些图像 但不更改它们的名称 jpegtran copy none optimize image jpg gt image jpg 但是 这似乎创建了 0 的文件大小 当我对不同的文件名执行此操作时 大小仍然完全相同 怎么样 jp

随机推荐

  • 陀螺解读

    出品 陀螺研究院 区块链是在数字世界围绕数据的记录 组织和传播创造的共建 共享 共治的应用范式 作为一种能够满足数字经济发展需求的关键技术 区块链可有效赋能产业转型 聚力推动产业经济价值 2019年10月24日 中共中央政治局明确把区块链作
  • 马氏距离-Mahalanobis Distance

    Mahalanobis距离是表示数据的协方差距离 它是一种有效的计算两个未知样本集的相似度的方法 与欧氏距离不同的是它考虑到各种特性之间的联系 与欧氏距离不同的是它考虑到各种特性之间的联系 例如 一条关于身高的信息会带来一条关于体重的信息
  • IDEA生成JSON字符串

    第一步 先书写以下基本程序 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 package cn lianxi cn lianxi json Author Wxz Date 2020 8 19 16 45 pu
  • UVa1614

    这道题是一道好题 我想了很久都没有想出合适的方案 这道题考了我们贪心 不确定 数学推导 确定 的能力 看来我的数学逻辑以及推理能力还需要加强啊 题意不说 直接上思路 由于1 lt ai lt i的条件 我们需要从这里入手求解 首先 我们需要
  • Vue判断字符串(或数组)中是否包含某个元素

    Vue判断字符串中是否包含某个字符串 方法有好多种 这里暂时先说我知道的两种 以后知道了别的 会继续更新 方法一 includes方法 数组 字符串都可以 var str Hello World if str includes World
  • 关于多层感知机(MLP)你必须知道的20个知识点

    问题1 MLP的基本组成单元是什么 答 MLP的基本组成单元是神经元 neuron 它通过激活函数对输入进行加权求和和非线性变换 问题2 MLP通常有几层 答 MLP通常有输入层 隐藏层和输出层 隐藏层可以有一层或多层 问题3 MLP的训练
  • 配置ntp客户端与服务器端时间的同步

    1 实验机器介绍 Ip地址 服务器1 192 168 245 128 服务器2 192 168 245 130 客户端1 192 168 245 129 实验前准备 在ntpS1 和ntpS2 中 配置外部服务器为同步服务器 并开放给192
  • 前端内存泄漏和溢出的情况以及解决办法

    写在前面 在平时写代码时 内存泄漏的情况会时有发生 虽然js有内存回收机制 但在平时编程中还是需要注意避免内存泄漏的情况 前几天做移动端时遇到一个内存泄漏造成移动端页面卡顿的问题 所以想总结下前端内存泄漏的情况 回顾下基础知识 一 什么是内
  • RPM 的 spec 文件如何编写

    在关于 RPM 软件包构建的上一篇文章中 你了解到了源 RPM 包括软件的源代码以及 spec 文件 这篇文章深入研究了 spec 文件 该文件中包含了有关如何构建 RPM 的指令 同样 本文以 fpaste 为例 了解源代码 在开始编写
  • 全球及中国汽车用导航行业应用前景与销售渠道分析报告2022-2028年

    全球及中国汽车用导航行业应用前景与销售渠道分析报告2022 2028年 修订日期 2022年1月 专员对接 周文文 查询鸿晟信合研究院了解详细内容 第一章 汽车用导航产业概述 1 1 汽车用导航定义及产品技术参数 1 2 汽车用导航分类 1
  • Idea:修改新项目默认设置

    修改Idea新项目默认设置 使用idea开发时 即使在settings设置项目配置 如maven 在新建项目也会发现项目配置变为默认 这时需要设置新建项目配置 配置步骤 File New Projects Setup Settings fo
  • Log4j 配置文件(log4j.properties)的所在路径问题

    一般我们直接将log4j properties放置在src目录下 这样系统自动会找到的 其实就是放在WEB INF classes文件下 这个路径在classpath下 所以直接就能找到 我们写Logger的时候如下 public clas
  • Servlet配置、会话管理——Servlet【总结】

    Servlet配置 初始化参数 Servlet除了可以从请求信息中获取信息外 还可以从配置文件中获取配置参数信息 配置文件中的参数信息与具体的请求无关 而是Servlet初始化时调用的 如此可以避免硬编码信息 提高Servlet的可移植性
  • 创建的源文件后缀不是.c,在一些编译器上不能编译

    问题描述 源文件的名字和后缀写的比较随意 后缀不是 c 代码没有语法高亮 可能在一些编译器上不能编译通过 现象 解决办法 C语言代码中我们有约定 源文件的后缀是 c 头文件的后缀是 h 这样在大部分的IDE中代码打开都是有语法高亮的
  • 想学软件开发做程序员,学习Python必备的Python从入门到精通约650GB全面学习资料

    先简单介绍一下Python的情况 后面文章最后附有零基础自学Python从入门到精通学习Python的视频文档源码低阶到高阶等全面学习资料约650GB 1 什么是PythonPython 是一个有条理的和强大的面向对象的程序设计语言 类似于
  • 使用 Selenium 和 Python 爬取股票网站历史资金数据的简易教程

    一 需求及技术介绍 在金融投资领域 了解股票市场的历史资金数据对于制定投资策略和做出明智的决策至关重要 这些数据包含着股票的交易量 资金流向 持股比例等关键指标 能够为投资者提供有价值的参考和分析依据 通过利用 Selenium 模拟浏览器
  • Debug-CDK编译

    问题描述 make No rule to make target xxx c needed by Obj xxx o Stop 解决方法 删掉obj文件夹 重新编译
  • 【网络基础】通俗易懂的了解HTTPS的整体过程

    文章目录 前言 HTTP 各个版本 结构 请求 请求行 请求头 请求体 响应 响应行 响应头 响应体 HTTPS 对称加密 非对称加密 对称和非对称结合加密 CA证书中级大发 证书 对称和非对称结合加密 证书关系链 拓展知识 证书的合法性验
  • STM32的常规芯片容量大小以及 大、小容量STM32芯片之间的差别?

    本文主要讨论STM32的常规芯片容量大小以及 STM32芯片大 小容量之间的差别 STM32大容量芯片是包括高达512K字节的闪存和64K字节的SRAM的芯片为大容量 STM32小容量芯片具体容量见下表 STM32F103xC STM32F
  • nginx+tomcat集群+https

    nginx tomcat集群 一 nginx安装 1 安装nginx需要的依赖包 yum y install gcc zlib zlib devel pcre devel openssl openssl devel 2 下载nginx安装包