linux部署带ssl的nginx
1.前期准备
1.1:下载nginx-1.18.0版本 http://nginx.org/download/nginx-1.18.0.tar.gz 然后上传到服 务器 /usr/local/src 目录下
1.2:安装编译工具及库文件
- //一键安装四个依赖
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
1.3:安装 PCRE PCRE 作用是让 Nginx 支持 Rewrite 功能
- 进入到安装目录
- cd /usr/local
- 下载pcre-8.35
- wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
- 解压安装包:
- tar zxvf pcre-8.35.tar.gz
- 进入安装包目录
- cd pcre-8.35
- 编译安装
- ./configure
- make && make install
- 查看pcre版本
- pcre-config --version
- 查看pcre版本
- rpm -qa pcre
2.nginx安装
2.1:进入到nginx文件目录
cd /usr/local/src/
2.2:解压安装包
tar -zxvf nginx-1.18.0.tar.gz
2.3:进入安装包目录
cd nginx-1.18.0
2.4:编译安装
- 将nginx编译安装到/usr/local/nginx下
- ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_ssl_module --with-pcre=/usr/local/pcre-8.35
- make
- make install
2.5:查看nginx版本
/usr/local/nginx/sbin/nginx -v
2.6:nginx常见命令
/usr/local/nginx/sbin/nginx 启动
/usr/local/nginx/sbin/nginx -s stop 关闭
/usr/local/nginx/sbin/nginx -s reload 重启
3.SSL配置
3.1:如果我们使用SSL证书需要引用到nginx的中SSL这个模块
上述nginx安装的时候加了./configure --prefix=/usr/local/nginx --with- http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/pcre-8.35 其中 --with-http_ssl_module就是添加ssl模块 如果没有加ssl模块可以添加这个模块就好了
3.2:要有SSL对应的 公钥和自私 放到指定文件夹下 /usr/ssl
service.crt # 公钥
service.key # 私钥
3.3:修改nginx配置文件
- cd /usr/local/nginx/conf
- vi nginx.conf
- //修改443端口文件
http{ #http节点中可以添加多个server节点 server{ #监听443端口 listen 443; #对应的域名,把domain.com改成你们自己的域名就可以了 server_name domain.com; ssl on; #公钥路径 ssl_certificate /usr/ssl/service.crt; #私钥路径 ssl_certificate_key /usr/ssl/service.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; location / { root /usr/local/service/ROOT; index index.html; } } server{ listen 80; server_name domain.com; rewrite ^/(.*)$ https://domain.com:443/$1 permanent; } }
3.4:重启nginx就可以了
一.错误
configure: error: You need a C++ compiler for C++ support.
安装c++ compiler
[root@localhost]# yum install -y gcc gcc-c++
-bash: wget: command not found 错误
yum -y install wget
启动报错 nginx: [error] invalid PID number "" in "/usr/local/nginx/logs/nginx.pid"
解决方法: [root@localhost nginx]/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
报错
make: *** No targets specified and no makefile found. Stop. 解决方法
yum install gcc gcc-c++ autoconf automake
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel (安装依赖zlib、openssl和pcre)
然后再走

linux部署带ssl的nginx的更多相关文章
- Linux 部署vue项目(使用nginx)
1.部署Nginx 请参考Linux下部署nginx,此处不再重复 2.Vue项目打包 # 打包正式环境 npm run build:prod # 打包预发布环境 npm run build:stag ...
- Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx)
Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx) 一丶集群和Nginx反向代理 ...
- 【Docker】(3)---linux部署Docker、Docker常用命令
linux部署Docker.Docker常用命令 本次部署Linux版本:CentOS 7.4 64位. 说明: 因为Docker是基于Linux 64bit的 所以Docker要求64位的系统且内核 ...
- linux 部署
一.d2 安装之后的配置 centos系统安装后的基本配置: .常用软件安装: yum install -y bash-completion vim lrzsz wget expect net-too ...
- Linux自带神器logrotate详解
Linux自带神器logrotate详解 散尽浮华 运维 3天前 作者:散尽浮华 链接:https://www.cnblogs.com/kevingrace/p/6307298.html 对于 L ...
- Linux 部署ASP.NET SQLite 应用 的坎坷之旅 附demo及源码
Linux 部署ASP.NET SQLite 应用 的坎坷之旅.文章底部 附示例代码. 有一台闲置的Linux VPS,尝试着部署一下.NET 程序,结果就踏上了坑之路,不过最后算是完美解决问题,遂记 ...
- Linux部署ASP.NET 5 (vNext)
原文:Linux部署ASP.NET 5 (vNext) ASP.NET 5 (vNext) Linux部署 引言 工欲善其事,必先利其器. 首先,我们先明确下以下基本概念 Linux相关 Ubun ...
- NetCore1.1+Linux部署初体验
1.环境准备 Centaos7+Win10 虚拟机 Win10安装VS2017 https://www.asp.net/downloads注意勾选下.Net Core 3.Centaos安装netco ...
- Ubuntu 18.04 安装部署Net Core、Nginx全过程
Ubuntu 18.04 安装部署Net Core.Nginx全过程 环境配置 Ubuntu 18.04 ,Nginx,.Net Core 2.1, Let's Encrypt 更新系统 sudo a ...
- 部署Asp.net core & Nginx,通过nginx转发
部署Asp.net core & Nginx,通过nginx转发 CentOS 7 x64 1.vs2017 建立Asp.net core项目,并发布到目录 2.通过FTP工具,将程序copy ...
随机推荐
- (七) Mysql 之 binlog redolog 二阶段提交
(一)背景知识: 1 binlog binlog 我们中文一般称作归档日志, 是 MySQL Server 层的日志,而不是存储引擎自带的日志,它记录了所有的 DDL 和 DML(不包含数据查询语句) ...
- python如何画高光谱立体图像
语句含义:spectral.view_cube(image,bands=[29,19,9]) 中的29,19和9是第几个波段,可以改成数据波段数以内的其他的数值
- 搭建CI环境和git使用
部署Git+Gerrit+Jenkins 的CI环境 使用Git作为代码存储及版本控制 使用Jenkins进行自动化构建 构建测试通过后,再交给人工review 人工review通过后,自动同步到远程 ...
- 解决html2canvas.js和pdf.js导出页面问题
最近在做项目时有这么一个需求,需要将当前html页面导出pdf到本地.由于之前是做过类似的功能的借助了两个插件分别是html2canvas.js和pdf.js,本以为是非常顺利就能完成的,实际在使用过 ...
- 图论专题 - LibreOJ
第三部分 图论 第 1 章 最小生成树 #10064 「一本通 3.1 例 1」黑暗城堡#10065 「一本通 3.1 例 2」北极通讯网络 #10066 「一本通 3.1 练习 1」新的开始#100 ...
- winfrom快捷键
1.当活动窗体的快捷键 1 protected override bool ProcessCmdKey(ref Message msg, Keys keyData) 2 { 3 KeyEventArg ...
- VMwareSDN环境配置之git安装
------------恢复内容开始------------ null ------------恢复内容结束------------
- Springboot 添加redis
在项目中常常会用到redis来缓存信息,下面就是如何在Springboot中添加redis 1:在pom.xml中添加依赖 2:配置redis 3:测试使用redis 1:在pom.xml中添加依赖, ...
- virtualenv指定使用本地某个版本python
virtualenv -p D:\env\py37_1\Scripts\python3.exe time01 红色的地方是 你本地python解释器的安装路径,后面黄色部分是创建的虚拟环境的名称. 另 ...
- oracle通过计划任务备份表
1.先手动创建表 create table user01_backup_20210204 select * from user01 commit; 2.清空表 truncate table user0 ...