nginx 离线安装 https反向代理

这里写自定义目录标题

  • 安装步骤
    • 1.安装nginx所需依赖
      • 1.1 安装gcc和gcc-c++
        • 1.1.1下载依赖包
        • 1.1.2 上传依赖包
        • 1.1.3安装依赖
      • 1.2 安装pcre
        • 1.2.1 下载pcre
        • 1.2.2 上传解压安装包
        • 1.2.3 编译安装
      • 1.3 下载安装zlib
        • 1.3.1 下载zlib
        • 1.3.2 上传解压安装包
        • 1.3.3 编译安装
      • 1.4 下载安装openssl
        • 1.4.1 下载
        • 1.4.2 上传解压安装包
        • 1.4.3 编译安装验证
    • 2. 下载安装nginx
      • 2.1 下载nginx安装包
      • 2.2 上传解压安装包
      • 2.3配置
      • 2.4 编译安装
      • 2.5 检查并启动
    • 3. 配置https反向代理
      • 3.1 用openssl生成公钥和私钥
      • 3.2 修改nginx配置 并重启验证
        • 3.2.1 修改nginx配置
        • 3.2.2 重启nginx
        • 3.2.3 修改hosts
        • 3.2.4 浏览器访问验证

安装步骤

1.安装nginx所需依赖

1.1 安装gcc和gcc-c++

1.1.1下载依赖包

gcc依赖下载镜像地址:
官网:https://gcc.gnu.org/releases.html
阿里云镜像站:http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/
CentOS 镜像站点:https://vault.centos.org/7.5.1804/os/x86_64/Packages/
​只需下载如下依赖即可:

cpp-4.8.5-44.el7.x86_64.rpm
gcc-4.8.5-44.el7.x86_64.rpm
glibc-devel-2.17-317.el7.x86_64.rpm
glibc-headers-2.17-317.el7.x86_64.rpm
kernel-headers-3.10.0-1160.el7.x86_64.rpm
libmpc-1.0.1-3.el7.x86_64.rpm
mpfr-3.1.1-4.el7.x86_64.rpm
-----------------------
gcc-c++-4.8.5-44.el7.x86_64.rpm
libstdc++-4.8.5-44.el7.x86_64.rpm
libstdc++-devel-4.8.5-44.el7.x86_64.rpm
1.1.2 上传依赖包

下载完成后,将依赖包上传到服务器,若权限不足不能上传,可以通过 sudo chmod -R 777 文件夹路径名命令增加权限

1.1.3安装依赖

进入上传目录,输入rpm -Uvh *.rpm --nodeps --forc命令进行批量安装,出现下图则说明安装成功

在这里插入图片描述
使用gcc-v和g++ -v命令查看版本,若出现版本详情则说明离线安装成功,如下图示:

在这里插入图片描述

1.2 安装pcre

1.2.1 下载pcre

下载地址​http://www.pcre.org/​

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.2.2 上传解压安装包

将下载好的安装包上传到服务器,并解压,解压命令tar -xvf pcre-8.45.tar.gz

1.2.3 编译安装

进入解压目录,依次执行以下命令:

./configure
make
make install

1.3 下载安装zlib

1.3.1 下载zlib

下载地址:http://www.zlib.net/

在这里插入图片描述

1.3.2 上传解压安装包

将下载好的安装包上传到服务器,并解压

1.3.3 编译安装

顺序执行一下命令:

./configure
make && make install

1.4 下载安装openssl

检查是否已安装openssl,输入命令openssl version,若出现版本信息,则无需安装;若没有安装则继续安装

1.4.1 下载

地址:https://www.openssl.org/source/
或者:https://www.openssl.org/source/old/1.0.2/openssl-1.0.2u.tar.gz

在这里插入图片描述

1.4.2 上传解压安装包

将下载好的安装包上传到服务器,并解压

1.4.3 编译安装验证

顺序执行一下命令:

#编译安装
./config --prefix=/usr/local/ssl
make && make install
#修改软连接
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl 
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
#查看版本
openssl version -a 

在这里插入图片描述

2. 下载安装nginx

2.1 下载nginx安装包

下载地址:https://nginx.org/en/download.html

2.2 上传解压安装包

将下载好的安装包上传到服务器,并解压

2.3配置

进入解压目录进行配置安装:

#配置 支持https需要用--with-http_ssl_module --with-openssl  
#其中with-openssl这个路径是openssl的解压路径(不是安装路径)
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-openssl=/usr/local/openssl-1.0.2

2.4 编译安装

顺序执行以下命令

make
make install

2.5 检查并启动

进入安装目录下的sbin文件夹,输入./nginx -t,如下图则说明安装成功

在这里插入图片描述
启动nginx,命令:

./nginx

浏览器访问nginx,前提是80端口可以访问。浏览器直接输入IP
在这里插入图片描述

3. 配置https反向代理

3.1 用openssl生成公钥和私钥

#生成一个私钥文件,在当前路径下 文件名叫nginx.key 1024位
openssl genrsa -out nginx.key 1024

在这里插入图片描述
生成证书请求文件

openssl req -new -key nginx.key -out nginx.csr

生成证书

openssl x509 -req -days 3650 -in nginx.csr -signkey nginx.key -out nginx.crt

3.2 修改nginx配置 并重启验证

3.2.1 修改nginx配置

进入nginx安装目录的conf下,修改nginx.conf文件

server {  
    listen 443 ssl;  
    server_name example.com;  # 替换为您的域名  
    ssl_certificate /path/to/nginx.crt;  # 替换为您的SSL证书文件路径  
    ssl_certificate_key /path/to/nginx.key;  # 替换为您的SSL证书密钥文件路径  
    location / {  
			proxy_pass http://backend_server;  # 替换为实际的后端服务器地址  
     	proxy_set_header Host $host;  
			proxy_set_header X-Real-IP $remote_addr;  
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
			proxy_set_header X-Forwarded-Proto $scheme;  
	}  
}
3.2.2 重启nginx

进入nginx安装目录

./sbin/nginx -s reload
3.2.3 修改hosts
127.0.0.1   example.com
3.2.4 浏览器访问验证

https://example.com

前部分参考https://blog.csdn.net/Shiny_boy_/article/details/126965658,有稍微的改动感谢!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/261613.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【K8s】3# 使用kuboard管理K8s集群(NFS存储安装)

文章目录 1.NFS是什么2.配置NFS服务器2.1.执行以下命令安装 nfs 服务器所需的软件包2.2.执行命令 vim /etc/exports,创建 exports 文件,文件内容如下2.3.执行以下命令,启动 nfs 服务2.4.检查配置是否生效 3.在客户端测试NFS3.1.执行以下命令安…

基于51的智能交通信号灯设计

文章目录 概要仿真图程序总结 资料下载地址:基于51的智能交通信号灯设计 概要 可实现东西、南北两个方向的红、黄、绿灯按设定的时间亮灭,用以指引交通通行,以倒计时方向显示时间。红、黄、绿交通灯的变化规律为: 1&#xff09…

在国内如何使用某知名GPT,附在线体验链接

在线体验 三种方式: 一、访问openai,之前需要国外手机号,现在好像不用验证了,但是调用API还是需要验证手机号 二、购买一个海外服务器,然后自行在海外服务器上部署一套调用OpenAI接口的服务 三、通过一些国内封装好的网…

Mybatis基本操作

目录 准备工作 删除操作 预编译SQL 增加操作 获取返回的主键 更新操作 准备工作 准备数据库表 emp创建一个新的springboot工程,选择引入对应的起步依赖(mybatis、mysql驱动、lombok)application.properties中引入数据库连接信息创建对应…

MDC Manifest Configurator

基于华为手册总结摘要的,有分布手册没写的,我给补充上了,比如:定义启动设定 CM配置流程:配置流程涵盖定义数据类型、服务接口、子网信息、部署通信、部署通信协议、定义可执行程序和进程、定义应用进程信息、创建服务…

c语言错误总结

函数 A:void类型函数可以 B:不需要,如果return 不返回任何值,函数会在return语句执行后终止执行,后面的语句不会执行 C:对的 D:不可能,return只能返回一个数据 A:函数不一定有返回值 B:可以…

JS - 设计模式持续学习中

通过例子持续学习JS设计模式中,接下来请跟随我的步伐走进我的学习笔记世界~ 什么是设计模式?我们为什么需要学习设计模式? 设计模式是可以更好解决问题的一种方案。 这意味着什么?如果你开发的项目的功能是固定的,永…

2023年12月GESP认证C++等级考试(八级)真题试卷

2023年12月GESP认证C等级考试(八级)真题试卷 题目总数:27 总分数:100 选择题 第 1 题 单选题 小杨要从A城到B城,⼜想顺路游览⼀番。他有两个选项:1、坐⾼铁路到C城游览,再坐⾼铁或飞机到B…

微信小程序制作瀑布流

先看效果&#xff1a; 瀑布流分为左侧和右侧 看代码&#xff1a; <view class"shops-tops"><view id"left"><view class"left"><image src"https://pic.imgdb.cn/item/6583d9d6c458853aef979621.jpg" class&quo…

【解决Typora图片不是显示问题】PicGo+Github+Typora+ onedrive/坚果云 实现笔记同步

【解决Typora图片不是显示问题】PicGo、Github、Typora实现笔记同步 写在前面&#xff1a; typora笔记软件使用记录typora图片上传问题&#xff1a;原因分析&#xff1a;解决方案&#xff1a;PicGoGithubTypora 坚果云/onedrive 实现笔记同步第一步. 设置上传模式&#xff1a;u…

配置BGP的基本示例

BGP简介 定义 边界网关协议BGP&#xff08;Border Gateway Protocol&#xff09;是一种实现自治系统AS&#xff08;Autonomous System&#xff09;之间的路由可达&#xff0c;并选择最佳路由的距离矢量路由协议。早期发布的三个版本分别是BGP-1&#xff08;RFC1105&#xff0…

Python的环境搭建环境配置()

Python 环境搭建 一,下载Python 1.去官网 www.python.org 下载环境 2.如图点击Download 3.选择Windows 4.如图直接下载 5.直接勾选 6.后面就一直默认选项 Win11 安装目录 不能放在C盘的ProgramFIle路径下 二,测试环境是否安装成功 1.winR 输入cmd 2.输入python --versio…

【K8s】2# 使用kuboard管理K8s集群(kuboard安装)

文章目录 安装 Kuboard v3部署计划 安装登录测试 安装 Kuboard v3 部署计划 在正式安装 kuboard v3 之前&#xff0c;需做好一个简单的部署计划的设计&#xff0c;在本例中&#xff0c;各组件之间的连接方式&#xff0c;如下图所示&#xff1a; 假设用户通过 http://外网IP:80…

AIGC:阿里开源大模型通义千问部署与实战

1 引言 通义千问-7B&#xff08;Qwen-7B&#xff09;是阿里云研发的通义千问大模型系列的70亿参数规模的模型。Qwen-7B是基于Transformer的大语言模型, 在超大规模的预训练数据上进行训练得到。预训练数据类型多样&#xff0c;覆盖广泛&#xff0c;包括大量网络文本、专业书籍…

[CVPR-23] Instant Volumetric Head Avatars

[paper | code | proj] 本文提出INSTA。INSTA是一种backward mapping方法。该方法基于NeRF建立标准空间&#xff0c;形变空间&#xff08;任意表情&#xff09;通过映射回标准空间&#xff0c;实现渲染。为实现形变空间中任意点向标准空间的映射&#xff0c;对形变空间中的任意…

rk3568 bootLoader编译

Linux系统uboot、linux kernel、rootfs移植学习笔记&#xff08;一&#xff09;_uboot 删除环境变量-CSDN博客 板信息配置文件&#xff1a;device/rockchip/rk356x/BoardConfig-IAC-RK3568-MB-BETA-V1_00.mk uboot编译入口 Linux系统uboot、linux kernel、rootfs移植学习笔记&…

许久不见钱伯斯,他说大部分AI公司会失败,但值得一拼

前言&#xff1a;AI大饼是否还不够大&#xff0c;于是我也想多画一画 【科技明说 &#xff5c; 科技热点关注】 许多年不见钱伯斯&#xff0c;他发声指出大部分AI公司会失败&#xff0c;但值得一拼。 钱伯斯(John Chambers)以长期担任思科(Cisco)首席执行官的硅谷传奇人物而…

C++入门【12-C++ 数组】

C 数组 C 支持数组数据结构&#xff0c;它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据&#xff0c;但它往往被认为是一系列相同类型的变量。 数组的声明并不是声明一个个单独的变量&#xff0c;比如 number0、number1、...、number99&#xff0…

软协打卡---内网穿透实现

注意&#xff1a;仅为个人学习知识&#xff0c;其中理论知识不一定正确。 目录 1.前言 2.ip与域名的简单说明 ip与域名 公共ip和内网ip 内网穿透了解 为什么使用内网穿透 内网穿透是什么 3.PHPSTUDY了解 4.花生壳的使用 最终结果&#xff1a; &#xff08;实际上大部…

Elasticsearch:什么是文本分类?

文本分类定义 - text classification 文本分类是一种机器学习&#xff0c;它将文本文档或句子分类为预定义的类或类别。 它分析文本的内容和含义&#xff0c;然后使用文本标签为其分配最合适的标签。 文本分类的实际应用包括情绪分析&#xff08;确定评论中的正面或负面情绪&…