Centos7+apache+ssl证书认证

  • Post author:
  • Post category:其他




1、基础环境

搭建好了apache,项目也正在运行,只需要做http跳转https。域名是www.a.com



2、SSL认证搭建

如果进行证书认证,则需要安装mode_ssl模块

Yum -y install mode_ssl

将ssl证书上传到服务器:a.com.crt、a.com.key、a.com_chain.crt,将这三个证书文件放在了/etc/httpd/conf.d/cert/目录下



3、修改apache配置文件

vim /etc/httpd/conf.d/ssl.conf

<VirtualHost *:443> //443是https访问端口

ServerName #修改为申请证书时绑定的域名www.YourDomainName1.com。

DocumentRoot /var/www/html/jsds //项目访问路径

SSLEngine on //开启SSL认证

SSLProtocol all -SSLv2 -SSLv3 # 添加SSL协议支持协议,去掉不安全的协议。

SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH

SSLHonorCipherOrder on

SSLCertificateFile cert/a.com.crt # 将a.com.crt替换成您证书文件名。

SSLCertificateKeyFile cert/a.com.key # 将a.com.key替换成您证书的密钥文件名。

SSLCertificateChainFile cert/a.com_chain.crt # 将a.com_chain.crt替换成您证书的密钥文件名;证书链开头如果有#字符,请删除。



4、重启apache服务

systemctl restart httpd / sevice httpd restart

此时即可访问https://www.a.com



将http://www.a.com 跳转到https://www.a.con

1、首先编辑httpd/conf/httpd.conf 去掉下面内容前面的#注释,使其生效

(Apache 2.4.6 版的这个拓展貌似是已经被加载了,可以在 httpd/conf.modules.d/00-systemd.conf 文件中找到) .

LoadModule rewrite_module modules/mod_rewrite.so

2、之后同样在conf/httpd.conf修改<Directory “/var/www/html”>内容下的AllowOverride None 改为AllowOverride All

3、然后在/var/www/html/目录(这个是网站的默认根目录,没有修改过,我的静态文件就放在下面 )下添加.htaccess文件

Touch .htaccess

Vi .htaccess

4、添加以下内容:

RewriteEngine On

RewriteCond %{HTTPS} !=on

RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R,L]

5、重启apache服务:systemctl restart httpd / sevice httpd restart



版权声明:本文为weixin_46081669原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。