前提是你先买好证书,下载下来,证书压缩包打开共有3个文件
证书文件:以.crt为后缀或文件类型。证书链文速记英语单词件:以.crt为后缀或文件类型。密钥文件:以.key为后缀或文件类型。在apache安装目录中新建cert目录,并将解压的apache证书、 证书链文件和密钥文件拷贝到cert目录中。
如果需要安装多个证书,需在apache目录中新建对应数量的cert目录,用于存放不同的证书 。
如果申请证书时选择了手动创建csr文件,请将手动生成创建的密钥文件拷贝到cert目录中并命名为domain name.key。
在apache安装目录下,打开apache/conf/httpd.conf文件,并找到以下参数,按照下文中注释内容进行配置
#loadmodule ssl_module modules/mod_ssl.so #删除行首的配置语句注释符号“#”加载mod_ssl.so模块启用ssl服务,apache默认是不启用该模块的。如果找不到该配置,请重新编译mod_s富马酸比索洛尔片sl模块。#include conf/extra/httpd-ssl.conf #删除行首的配置语句注释符号“#”。
存httpd.conf文件并退出
打开apache/conf/extra/httpd-ssl.conf文件并找到以下参数,按照下文中注释内容进行配置。
证书路径建议使用绝对路径。
根据操作系统的不同,http-ssl.conf文件也可能存放在conf.d/ssl.conf目录中。
<virtualhost *:443> rvername #修改为申请证书时绑定的域名www.yourdomainname1.com。 documentroot "d:/phpstudy/www/yg" sslengine on sslproto北师大宿舍col all -sslv2 -sslv3 # 添加ssl协议支持协议,去掉不安全的协议。 sslciphersuite high:!rc4:!md5:!anull:!enull:!null:!dh:!edh:!exp:+medium # 修改加密套件。 sslhonorcipherorder on sslcertificatefile "d:/phpstudy/apache/cert/2335105__yg1st.com_public.crt" # 将domain name1_public.crt替换成您证书文件名。 sslcertificatekeyfile "d:/phpstudy/apache/cert/2335105__yg1st.com.key" # 将domain name1.key替换成您证书的密钥文件名。 sslcertificatechainf瞻园ile "d:/phpstudy/apache/cert/2335105__yg1st.com_chain.crt" # 将domain name1_chain.crt替换成您证书的密钥文件名;证书链开头如果有#字符,请删除。</virtualhost>#如果证书包含多个域名,复制以上参数,并将rvername替换成第二个域名。 <virtualhost *:443> rvername #修改为申请证书时绑定的第二个域名www.yourdomainname2.com。 documentroot "d:/phpstudy/www/yg" sslengine on sslprotocol all -sslv2 -sslv3 # 添加ssl协议支持协议,去掉不安全的协议。 sslciphersuite high:!rc4:!md5:!anull:!enull:!null:!dh:!edh:!exp:+medium # 修改加密套件。 sslhonorcipherorder on sslcertificatefile "d:/phpstudy/apache/cert/2335105__yg1st.com_public.crt" # 将domain name2替换成您申请证书时的第二个域名。 sslcertificatekeyfile "d:/phpstudy/apache/cert/2335105__yg1st.com.key" # 将domain name2替换成您申请证书时的第二个域名。 sslcertificatechainfile "d:/phpst北京是什么气候udy/apache/cert/2335105__yg1st.com_chain.crt" # 将domain name2替换成您申请证书时的第二个域名;证书链开头如果有#字符,请删除。</virtualhost>
改完之后,注意这文件里有一些关于logs文件的,路径一定要改对,根据实际路径来
比如我的就是:
errorlog "d:\phpstudy\apache\logs\error.log"transferlog "d:\phpstudy\apache\logs\access.log"
改完之后打开cmd
进入你的apache安装目录的bin目录下
使用:httpd -t
测试,如果有报错就根据提示信息修改;没有报错则重启apache即可
网站成功安装证书,可以用https打开
这样做完的结果是,用https可以打开,但是http开头的还是打不开
还需要设置让http开头的网站自动跳转到https开头
在httpd.conf的<directory>标签内,键入以下内容
rewriteengine onrewritecond %{rver_port} !^443$rewriterule ^(.*)?$ https://%{rver_name}/$1 [l,r=301]
当然我的不完全是这样,因为我有设置别的伪静态规则,因此做了一些调整
证书安装完成之后,发现在谷歌浏览器里左上角有个提示,点开显示网站连接并非完全安全
原因是我们的页面存在一些不安全的http请求,比如图片、js等静态文件。
我们只需要将其升级为https请求即可。
页面的head中加入:
<meta http-equiv="content-curity-policy" content="upgrade-incure-requests">
意思是自动将http的不安全请求升级为https
添加之后,谷歌浏览器显示“链接是安全的”
本文发布于:2023-04-08 09:05:17,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/3fe15fb922bee33b5732d144e001c4f9.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:在Apache服务器上安装SSL证书.doc
本文 PDF 下载地址:在Apache服务器上安装SSL证书.pdf
留言与评论(共有 0 条评论) |