Linux上面配置Apache2支持Https(ssl)具体方案实现

news2024/11/19 2:25:21

虽然Nginx比较流行,但是由于一些老项目用到了Apache2来支持Web服务,最近想给服务上一个Https支持,虽然看似教程简单,但是也遇到一些特殊情况,经历了一番折腾也算是解决了所有问题,将过程记录如下。演示是基于Ubantu系统。

在这里插入图片描述

申请ssl证书

首先为自己的域名申请好ssl证书,这里用到了阿里云的免费证书。下载的时候选择apache的版本。解压后里面包含三个文件,这三个文件后面都要放到服务器上面。
在这里插入图片描述

配置证书

然后登录到服务器上面,进行相应的文件与配置调整,首选是要配置Apache2支持ssl,在服务器上面运行如下命令。

apt-get install openssl
a2enmod ssl

然后 vim /etc/apache2/ports.conf,看是否配置了443的监听,一般情况下内容如下表示是正常情况。
在这里插入图片描述
然后继续配置证书相关的东西,先把证书上传到服务器并放到指定位置,ftp或者rz命令都可以,后面要用到。

cd /etc/apache2/sites-available/

在这里插入图片描述
可以看到上图有两个文件,这里主要用到了default-ssl.conf,然后选择编辑它。核心就是下面的一些内容,重点是证书的应用决定了https服务能不能配置成功。

<IfModule mod_ssl.c>
        #<VirtualHost _default_:443>
        <VirtualHost *:443>
                ServerName 你的域名
                DocumentRoot WEB根目录
                SSLEngine on
                SSLCertificateFile      public.crt证书文件位置
                SSLCertificateKeyFile   key证书文件位置
                SSLCertificateChainFile chain.crt证书文件位置
        </VirtualHost>
</IfModule>

检测配置

上面内容配置了就基本差不多了,使用命令service apache2 restart或者service apache2 reload重启/重新载入服务。然后https访问一下自己的域名。如果浏览器地址栏出现了安全锁,则表示配置成功。下图为成功示范。
在这里插入图片描述
如果访问出现异常,可以尝试做以下检查。

1. 自己的ssl证书路径是否配置错了。
2. a2ensite default-ssl.conf 应用一下ssl配置
3. 443端口阿里云后台安全组有没有放行
配置Http跳转

如果需要http自动跳转到https,可以做如下配置。

a2enmod rewrite #开启重定向模块

vim /etc/apache2/sites-available/000-default.conf,做如下三行配置。

<VirtualHost *:80>
    RewriteEngine on
    RewriteCond   %{HTTPS} !=on
    RewriteRule   ^(.*)  https://%{SERVER_NAME}$1 [L,R]
   ...
</VirtualHost>

结尾

今天的内容就分享到这里,如果配置过程出现了问题 欢迎评论区留言或者私信我,一起来解决。如果有帮助到您给个关注吧,更多精彩即将到来。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

亿级高并发电商项目-- 实战篇 --万达商城项目 三(通用模块、商品服务模块、后台API模块、IDEA忽略文件显示等开发工作

专栏&#xff1a;高并发项目 &#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是小童&#xff0c;Java开发工程师&#xff0c;CSDN博客博主&#xff0c;Java领域新星创作者 &#x1f4d5;系列专栏&#xff1a;前端、Java、Java中间件大全、微信小程序、微信支付、若依框…

4.SpringWeb

一、创建项目LomBok:辅助开发工具&#xff0c;减少代码编写Spring Web:带上Spring MVC,可以做Web开发了Thymleaf: Web开发末班引擎&#xff08;不常用&#xff09;创建好&#xff0c;如下&#xff1a;static/ 放置静态资源的根目录templates/ 放置模板文件的根目录 二、资源配置…

新来的23岁软件测试员上来秀了波操作,把几个老员工看傻了

春招了&#xff0c;公司来了个小伙子&#xff0c;一看简历&#xff0c;嘿&#xff1f;22岁&#xff0c;这不刚毕业的小毛孩子嘛&#xff0c;结果没想到人家上来就把现有项目的性能优化了一遍&#xff0c;给公司节省了一半的成本&#xff0c;这种“王炸”打法&#xff0c;直接给…

152、【动态规划】leetcode ——416. 分割等和子集:滚动数组+二维数组(C++版本)

题目描述 原题链接&#xff1a;416. 分割等和子集 解题思路 题目要求是划分出两个相等的集合&#xff0c;那么这两个相等的集合相加&#xff0c;一定等于偶数并且为总集合的二分之一&#xff0c;若总集合求和后不为偶数&#xff0c;则一定不可以划分&#xff0c;直接返回fals…

黄绮珊“绮望三十”巡回演唱会3月4日广州中山纪念堂暖春开唱!

•中年成名 四十余载静待盛放歌手黄绮珊&#xff0c;1991年正式进入歌坛&#xff0c;至今已满三十周年。黄绮珊前半生的歌手之路好像并不是那么顺畅。虽然一直有着华语乐坛的顶尖歌唱实力&#xff0c;但在45岁之前&#xff0c;黄绮珊一直处于“歌红人不红”的状态。不少人听过黄…

GPU服务器安装显卡驱动、CUDA和cuDNN

GPU服务器安装cuda和cudnn1. 服务器驱动安装2. cuda安装3. cudNN安装4. 安装docker环境5. 安装nvidia-docker25.1 ubuntu系统安装5.2 centos系统安装6. 测试docker容调用GPU服务1. 服务器驱动安装 显卡驱动下载地址https://www.nvidia.cn/Download/index.aspx?langcn显卡驱动…

Zabbix 构建监控告警平台(三)

Zabbix User parametersZabbix Trigger1.Zabbix User parameters 1.1即自定义KEY 注意&#xff1a;mysql安装在被监测主机 [rootlocalhost ~]# yum -y install mariadb-server mariadb [rootlocalhost ~]# systemctl start mariadb [rootlocalhost ~]# mysqladmin -uroot statu…

[electron] 一 vue3.2+vite+electron 项目集成

一 开发环境系统&#xff1a;windows开发工具&#xff1a; git , vscode&#xff0c;termial环境依赖&#xff1a; node, npm 二 步骤2.1 通过vite 创建vue项目通过 终端执行命令&#xff0c;选择 模板 vuenpm init vite cd 项目目录 npm install npm run dev2.2 集成 electro…

T06 成绩排序

查找和排序 题目&#xff1a;输入任意&#xff08;用户&#xff0c;成绩&#xff09;序列&#xff0c;可以获得成绩从高到低或从低到高的排列,相同成绩 都按先录入排列在前的规则处理。 示例&#xff1a; jack 70 peter 96 Tom 70 smith 67 从高到低 成…

LC-70-爬楼梯

原题链接&#xff1a;爬楼梯 个人解法 思路&#xff1a; 动态规划 状态表示&#xff1a;f[i]表示走到第n阶台阶有几种方法 状态转移&#xff1a;f[i] f[i -1] f[i - 2] 这实际上就是斐波那契数列&#xff0c;通过转移可以看到&#xff0c;我们只用了三个变量&#xff0c;故…

Java、JSP职工人事管理系统设计与实现

技术&#xff1a;Java、JSP等摘要&#xff1a;现在随着我们这个社会的计算机技术的快速发展&#xff0c;计算机在企业管理中得到普遍的应用&#xff0c;现在我们利用计算机在实现企业职工的管理越来越重要。当今社会是快速发展的信息社会&#xff0c;自动化信息的作用也变得越来…

Python 之 NumPy 简介和创建数组

文章目录一、NumPy 简介1. 为什么要使用 NumPy2. NumPy 数据类型3. NumPy 数组属性4. NumPy 的 ndarray 对象二、numpy.array() 创建数组1. 基础理论2. 基础操作演示3. numpy.array() 参数详解三、numpy.arange() 生成区间数组四、numpy.linspace() 创建等差数列五、numpy.logs…

第四章 Opencv图像色彩空间与通道

文章目录1.色彩空间1-1.RGB/BGR色彩空间1-2.GRAY色彩空间1-3.HSV色彩空间2.通道2-1.拆分通道&#xff1a;split()方法1.拆BGR色彩空间图像的通道2.拆HSV色彩空间图像的通道2-2.合并通道&#xff1a;merge()方法1.B、G、R 通道的合并2.H、S、V 通道的合并3.B、G、R、A 通道的合并…

M100嵌入式自动吞吐式读写器|电动读卡机如何通过C#程序读取社保卡号

M100嵌入式自动吞吐式读写器|电动读卡机是一款双保护门功能读卡器&#xff0c;第一层防尘防异物机械门&#xff0c;第二层电动门。 M100嵌入式自动吞吐式读写器|电动读卡机采用耐高温、耐磨擦、高强度、抗老化的复合型塑胶为主体&#xff0c;在走卡通道两侧镶有不锈钢金属&…

YUV数据和格式

一、YUV简介 1.YUV说明 YUV是一种颜色编码方法&#xff0c; 与RGB&#xff08;红 - 绿 - 蓝&#xff09;不同。 <1>Y表示亮度分量&#xff0c;也叫灰阶值&#xff1a;如果只显示Y&#xff0c;图片会是一张黑白照 <2>U&#xff08;Cb&#xff09;表示色度分量&…

2022年12月电子学会Python等级考试试卷(三级)答案解析

目录 一、单选题(共25题&#xff0c;共50分) 二、判断题(共10题&#xff0c;共20分) 三、编程题(共3题&#xff0c;共30分) 青少年软件编程&#xff08;Python&#xff09;等级考试试卷&#xff08;三级&#xff09; 一、单选题(共25题&#xff0c;共50分) 1. 列表L1中全是…

你知道ChatGPT能搞钱吗?哎呦喂,不知道,那没意思

这段时间&#xff0c;热度zui大的是什么&#xff1f;答案是—— &#x1f389;&#x1f389;ChatGPT&#x1f389;&#x1f389;。去年11月底上线&#xff0c;当时仅在AI和科技圈内小火了一把&#xff0c;没想到在今年春节后&#xff0c;火爆出圈。 ChatGPT的爆火&#xff0c;对…

微信小程序nodej‘s+vue警局便民服务管理系统

本文首先介绍了设计的背景与研究目的,其次介绍系统相关技术,重点叙述了系统功能分析以及详细设计,最后总结了系统的开发心得在Internet高速发展的今天,我们生活的各个领域都涉及到计算机的应用,其中包括“最多跑一次”微信小程序的网络应用,在外国小程序的使用已经是很普遍的方…

java多线程开发

1.并发和并行 并发&#xff1a;同一时间段内多个任务同时进行。 并行&#xff1a;同一时间点多个任务同时进行。 2.进程线程 进程&#xff08;Process&#xff09;&#xff1a;进程是程序的一次动态执行过程&#xff0c;它经历了从代码加载、执行、到执行完毕的一个完整过程…

当资深程序员深夜去“打劫”会发生什么?——打家劫舍详解

文章目录一、前言二、概述三、打家劫舍第一晚四、打家劫舍第二晚五、打家劫舍第三晚......一、前言 大家好久不见&#xff0c;正如标题所示&#xff0c;今天我不打算聊一些枯燥的算法理论&#xff0c;我们来聊一聊程序员有多厉害&#xff01; 注意&#xff01;&#xff01;&am…