Apache下的http升级https详解

版权声明:作者:Yfw 出处:https://blog.csdn.net/u012577474 本文版权归作者和CSDN共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。 https://blog.csdn.net/u012577474/article/details/89447760

**

一、升级https带来的好处:

**
http升级成https 不仅能够提升SEO排名、防止流量劫持,而且现在浏览器,iOS、安卓等移动端系统,以及微信小程序等相关应用产品,都要求网站/应用服务器使用HTTPS加密。为网站升级HTTPS加密可以适应更广泛的安全合规性要求,在进行业务扩展、API接入等合作时能畅行无阻。

二、升级前的准备工作

1、HTTPS证书申请:
这里提供一个网站https://freessl.cn/,可以申请由Let’s Encrypt 与 TrustAsia 为我们提供免费SSL证书。

在这里插入图片描述
图1-1
输入你的域名,点击创建免费SSL证书。
在这里插入图片描述
图1-2
这里我选择文件验证,浏览器生成,然后点击创建。这里会弹出下载窗口,下载private.key文件,这个文件可以不用。
在这里插入图片描述
图1-3

点击图片上右下角的下载文件链接,下载fileauth.txt文件上传到你的WEB服务器(上图指定路径下),用于进行域名的拥有者的身份验证。然后点击配置完成,检测一下。
所有验证都通过后,我们将获得证书如下:

在这里插入图片描述
图1-4

到这里已经申请成功了,点击下载你的证书。解压下载的文件,其中包含证两个文件full_chain.pem和private.key。

2、Apache相关模块的安装:

为了使Apache支持https访问,系统需要安有apache、openssl、mod_ssl.so。

三、Apache配置HTTPS

这里我们主要关心两个配置文件,ssl.conf(或httpd_ssl.conf)和httpd.conf,ssl在目录 /etc/httpd/conf.d下面,httpd.conf 在目录/etc/httpd/conf下面。
ssl.conf文件只有在SSL模块安装完成才会有,如果没找到说明没安装成功。
我们在/etc/httpd/conf下面创建ssl文件夹,把前面下载的证书文件放置此目录下,后面需要用到。

1、httpd.conf的配置文件需要修改的地方如下:

①、LoadModule ssl_module modules/mod_ssl.so(增加或找到这一行去掉注释‘#’)
②、ServerName kormee.freenat.club (主机名设置成自己的域名)
③、在最后添加下面4条语句,开启http强制转https,如果需要http和https都支持可不加。
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} !^/tz.php
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R]

2、ssl.conf的配置文件需要修改的地方如下:
①、DocumentRoot “/var/www/html” (去掉注释‘#’)
②、ServerName kormee.freenat.club (去掉注释并改成自己的域名)
③、SSLEngine on
④、SSLCertificateFile /etc/httpd/conf/ssl/full_chain.pem (full_chain.pem证书文件路径)
⑤、SSLCertificateKeyFile /etc/httpd/conf/ssl/private.key(private.key证书文件路径)

开放443端口(https默认端口)
firewall-cmd --zone=public --add-port=80/tcp --permanent (–permanent永久生效,没有此参数重启后失效)
执行systemctl restart httpd.service重启apache。

在浏览器地址栏输入https://kormee.freenat.club/wordpress/,然后回车
在这里插入图片描述
图1-5

这里我们可以看到网站已经成功升级https了。
不过网页还是提示不安全,那是因为网页中还存在http的连接,如图片连接之类的,都需要改成https形式的连接。

扫码下方二维码关注公众号,获取更多学习资源及视频教程 (Linux\Python\Java和大数据开发)。

工众号回复【我要资源】免费获取。

联系邮箱:[email protected]

在这里插入图片描述

Talk is cheap. Show me the code。————Linus Torvalds

猜你喜欢

转载自blog.csdn.net/u012577474/article/details/89447760