Linux 中 Xampp 的 https 安全证书配置
一、前言
HTTP 协议是不加密传输数据的,也就是用户跟你的网站之间传递数据有可能在途中被截获,破解传递的真实内容,所以使用不加密的 HTTP 的网站是不太安全的。在一些对安全性要求较高的网站,比如银行、证券、购物等,都采用 HTTPS 服务,这样在这些网站上的交换信息,其他人抓包获取到的是加密数据,保证了交易的安全性。网页的地址以 https:// 开始,而不是常见的 http://。所以, Google 的 Chrome 浏览器从 2017 年 1 月开始,标记使用不加密的 HTTP 协议的网站为 Not Secure,不安全。给网站加上 SSL 功能,只要申请一个 SSL 证书,在服务器端配置好,就可以实现 https 访问了。安全证书分为免费的和收费的,此处我们选择免费类型的证书。
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS 与 SSL 在传输层对网络连接进行加密。
二、申请 https 安全证书
由于本人使用的是阿里云的 ECS 服务器,可以在阿里云申请免费的 CA 证书。申请证书之后, 系统会按照不同的服务器,提供不同的证书下载,主要支持的服务器有 Nginx、Apache、Tomcat 和 IIS 等。
进入到阿里云控制台 - 安全(云盾)- CA证书服务(数据安全),点击右上方的购买证书,进入到如下页面:

(免费)购买之后证书服务之后,在"我的订单"中找到购买的证书记录,"补全"信息,绑定自己的域名和个人信息,提交之后等待审核,当状态变为"已签发"之后,就可以点击"下载"进入如下页面,按照不同的服务器下载对应的证书。

由于我的 php 集成环境是 xampp,所以需要在 Apache 中配置安全证书,此处下载 Apache 的安全证书压缩包。
三、安装 SSL 证书并开启 443 端口
首先,编辑 /opt/lampp/etc/httpd.conf,分别查找下面两项配置,确保去掉前面的 #
LoadModule ssl_module modules/mod_ssl.so
Include etc/extra/httpd-ssl.conf
解压缩之后如下,可以看到如下文件:

然后将证书文件上传到自己的服务器中,打开 /opt/lampp/etc/extra/httpd-ssl.conf 文件,找到如下配置项,按照上传的路径做配置:
# 证书公钥配置
SSLCertificateFile "/opt/lampp/etc/ssl.crt/public.pem"
# 证书私钥配置
SSLCertificateKeyFile "/opt/lampp/etc/ssl.key/2145229xxxxxxxx.key"
# 证书链配置
SSLCertificateChainFile "/opt/lampp/etc/chain.pem"
开启 443 端口:
<VirtualHost _default_:443>
443 端口也是网页浏览端口,但主要是用于 HTTPS 服务,是提供加密和通过安全端口传输的。另一种网页端口是 HTTP,HTTP 主要使用 80 端口。
配置好之后,重启服务器即可生效。
[root@ryan extra]# /opt/lampp/lampp reloadapache
XAMPP: Reload Apache...ok.
然后还需要在防火墙中放行 443 端口,如果是在阿里云服务器上,则需要添加安全组规则,如下:

这一步切记不要忘记,提供服务后,一定要开放服务对应的端口,这样别人才能访问该服务。
四、验证
以谷歌 Chrome 为例:
4.1 安装证书前,浏览器显示不安全:

点击"不安全",会出现如下提示:

4.2 安装证书后,浏览器有可能显示如下:

点击那个带感叹号的圆圈,提示如下:

出现这样的提示是由于网站页面上包含混合内容导致的,也就是说,网站页面上包含 http 的资源也包含 https 的资源。通常这种情况是需要在网站页面上做一些调整才能去除提示。
通过 F12 查看页面所有的额请求发现,其中有个别资源文件的请求依然是 http,所以需要调整这些不安全的连接。
4.3 调整后,浏览器显示如下:

发现浏览器已经出现了小绿锁,表示系统已经使用了 https 安全连接。
点击小绿锁,显示如下:

浏览器一切正常,表明 https 证书配置成功。
Linux 中 Xampp 的 https 安全证书配置的更多相关文章
- Linux中安装C++编译器codeBlock,并配置opencv链接库
1.Linux中安装codeBlock https://blog.csdn.net/xinyunyishui/article/details/50967395 2.CodeBlock中的中文显示不完全 ...
- linux中keepalived实现nginx高可用配置
linux中keepalived实现nginx高可用配置 安装keepalived 运行如下命令即可 tar -zxvf keepalived-2.0.8.tar.gz -C /usr/src cd ...
- 阿里云https免费证书配置-包教会
阿里云https免费证书配置-包教会-有需要请联系小编! 小编个人站点:https://www.itdog.site/ 小编微信号:wvqusrtg
- linux下安装Apache(https) 服务器证书安装配置指南
一. 安装准备 1. 安装Openssl 要使Apache支持SSL,需要首先安装Openssl支持.推荐下载安装openssl-0.9.8k.tar.gz 下载Openssl:http: ...
- nginx配置ssl双向验证 nginx https ssl证书配置
1.安装nginx 参考<nginx安装>:http://www.ttlsa.com/nginx/nginx-install-on-linux/ 如果你想在单IP/服务器上配置多个http ...
- linux中Python源码安装和配置
安装 首先获取安装包,此处版本为3.7 wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz 解压 tar xvf Python- ...
- Linux中Nginx服务器的部署和配置
目录 Nginx安装方式: yum源安装 目录结构: 源码包安装 目录结构: Nginx中支持PHP Nginx中配置php对mysql数据库的支持 Nginx配置反向代理服务器 正常代理 根据不同端 ...
- ios https 安全证书配置
原定于2017年1月1日起所有提交到 App Store 的App必须强制开启 ATS,需要配置Https.但是现在不需要了,无固定期限的往后延期了,但是这个还是得弄明白下为好,说不定哪天突然就让弄了 ...
- 【LNMP】基于阿里云的https免费证书配置
1 登录阿里云账户,左侧菜单选择 -> 2 右上角选择购买证书,选择免费型 3 按照流程购买,回到订单列表.填写认证信息,选择DNS解析, 在列表 选择下载证书 4 我的服务器是ng ...
随机推荐
- Django上线部署之Apache
环境: 1.Windows Server 2016 Datacenter 64位 2.SQL Server 2016 Enterprise 64位 3.Python 3.6.0 64位 4.admin ...
- Web Worker 使用教程
一.概述 JavaScript 语言采用的是单线程模型,也就是说,所有任务只能在一个线程上完成,一次只能做一件事.前面的任务没做完,后面的任务只能等着.随着电脑计算能力的增强,尤其是多核 CPU 的出 ...
- Selenium + python 测试环境搭建
Windows平台(py3 已经自带了工具包) 准备工具: python.setuptools(python工具基础包).pip(python安装包管理工具) 安装步骤: 1.python安装,运行e ...
- iOS 11 变化
首先我是开发者,更关心对技术的影响,我又需要关注.学习哪些技术,猫神的文章:http://www.cocoachina.com/ios/20170607/19457.html 介绍了 ******** ...
- GSS4&&花仔游历各国
首先呢,我们想到一种数据结构可以区间开方,一看就不行,但是一看就算是10^18开六次方也只剩一,就不用开根了,所以可以想到用线段树或者分块水过,由于本人 不会用分块,只能用常数巨大的线段树 Code ...
- 《Java 8 in Action》Chapter 4:引入流
1. 流简介 流是Java API的新成员,它允许你以声明性方式处理数据集合(通过查询语句来表达,而不是临时编写一个实现).就现在来说,你可以把它们看成遍历数据集的高级迭代器.此外,流还可以透明地并行 ...
- HTML的发展及认识
首先HTML全称是Hypertext Markup Language,它是一门超文本标记语言: HTML已经有了HTML2.0.HTML3.2.HTML 4.0. HTML4.01. HTML5几个阶 ...
- 代码解读 | VINS 视觉前端
本文作者是计算机视觉life公众号成员蔡量力,由于格式问题部分内容显示可能有问题,更好的阅读体验,请查看原文链接:代码解读 | VINS 视觉前端 vins前端概述 在搞清楚VINS前端之前,首先要搞 ...
- Springboot源码分析之事务拦截和管理
摘要: 在springboot的自动装配事务里面,InfrastructureAdvisorAutoProxyCreator ,TransactionInterceptor,PlatformTrans ...
- Centos安装和配置Mysql5.7
[root@localhost ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm -bash ...