nginx 离线安装 https反向代理

这里写自定义目录标题

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

​只需下载如下依赖即可:

bash 复制代码
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 编译安装

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

bash 复制代码
./configure
make
make install

1.3 下载安装zlib

1.3.1 下载zlib

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

1.3.2 上传解压安装包

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

1.3.3 编译安装

顺序执行一下命令:

bash 复制代码
./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 编译安装验证

顺序执行一下命令:

bash 复制代码
#编译安装
./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配置

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

bash 复制代码
#配置 支持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 编译安装

顺序执行以下命令

bash 复制代码
make
make install

2.5 检查并启动

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

启动nginx,命令:

bash 复制代码
./nginx

浏览器访问nginx,前提是80端口可以访问。浏览器直接输入IP

3. 配置https反向代理

3.1 用openssl生成公钥和私钥

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

生成证书请求文件

bash 复制代码
openssl req -new -key nginx.key -out nginx.csr

生成证书

bash 复制代码
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文件

bash 复制代码
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安装目录

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

https://example.com

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

相关推荐
iangyu1 小时前
docker常用命令
运维·docker·容器
小小不董2 小时前
图文深入理解Oracle DB Scheduler
linux·运维·服务器·数据库·oracle
南瓜小米粥、3 小时前
通过fdisk初始化Linux数据盘
linux·运维·服务器
LYK_HAHA4 小时前
centos常用知识和命令
linux·运维·centos
PythonFun5 小时前
自建RustDesk服务器:详细步骤与操作指南
运维·服务器
可涵不会debug5 小时前
【Linux】信号知识三把斧——信号的产生、保存和处理
linux·运维·信号
facaixxx20245 小时前
京东云主机怎么用?使用京东云服务器建网站(图文教程)
运维·服务器·京东云
jyan_敬言5 小时前
【Linux】Linux命令与操作详解(一)文件管理(文件命令)、用户与用户组管理(创建、删除用户/组)
linux·运维·服务器·c语言·开发语言·汇编·c++
赖勇浩6 小时前
因浏览器未发送Referer HTTP头导致Django项目CSRF验证失败的原因
http·https·django·csrf
学思之道6 小时前
给Linux操作系统命令取个别名
linux·运维·经验分享·学习方法