网站切换为https访问,并将http重定向https

本文档介绍了如何在Apache2.4.6环境中配置HTTPS并实现http到https的自动重定向。首先,需要生成SSL证书并上传到相应目录,然后修改ssl.conf配置文件引入证书。接着,在httpd.conf中启用SSL模块,引入ssl.conf,并设置重定向规则。最后,重启httpd服务。在配置过程中,需注意避免证书路径错误和配置文件的默认设置问题,例如DefaultType的注释。按照步骤操作,可以顺利解决网站安全访问问题。

网站切换为https访问,并将http重定向https

Apache2.4.6 +PHP

一、生成证书
生成忽略。
我这边有三个文件:
证书文件
将.key上传到: /etc/pki/tls/private/
将chain.crt上传到: /etc/pki/tls/private/
将public.crt上传到: /etc/pki/tls/certs/

二、修改ssl配置文件


路径: /etc/httpd/conf.d/ssl.conf
如果没有这个文件请安装一下:yum install mod_ssl openssl

1、去掉#号,将三个文件上传到对应目录,并在ssl.conf下配置好。

在这里插入图片描述

2、创建虚拟主机,使用跳转功能和使用443端口访问
最好配置一下error_log有报错可以输出
按照我如下部分配置即可

在这里插入图片描述

三、修改Apache配置文件

/etc/httpd/conf/httpd.conf

1、添加LoadModule ssl_module modules/mod_ssl.so模块,如果配置文件有,去掉#号

LoadModule ssl_module modules/mod_ssl.so

2、引入SSL配置文件,就是步骤2配置的

Include conf.d/ssl.conf

3、定义重定向,就是http访问也会自动跳转到https
直接在http.conf最后配置即可,在httpd.conf文件尾加入如下内容:可直接复制

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^/?(.*)$ https://%{SERVER_NAME}/$1 [L,R]

四、重启httpd服务

systemctl restart httpd

五、配置过程中出现的问题

粗心很导致很多问题,按照如上步骤一步步检查就不会有很大的问题

1、 ssl.conf下面证书的路径放错了 ,有一个放重复了,导致httpd无法启动
Fatal error initialising mod_ssl, exiting. See /etc/httpd/logs/ssl_error_log for more information
suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
Fatal error initialising mod_ssl, exiting. See /etc/httpd/logs/ssl_error_log for more information
在这里插入图片描述

2、去httpd.conf配置文件将DefaultType注释掉,这是针对HTTP的,具体原因也不清楚哈哈哈哈
Ignoring deprecated use of DefaultType in line 124 of /etc/httpd/conf/httpd.conf.

一般按照如上的步骤是不会有问题的,如果这篇文章能帮助正在发愁的你,请点赞笔芯收藏吧,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值