现在大部分网站都是用了https加密协议,下面就简单介绍一下在Apache下面如何将自己的网站改成https的吧
1、先去申请一个ssl证书,贵的几万一年,便宜的几千,当然也有免费的,比如【腾讯云】上可以免费申请一年的证书
2、需要注意的是,http协议默认是80端口,而https是433端口,要保证443端口是开放的并且防护墙是打开的
3、安装Apache的sll插件 centos系统 例:yum install mod_sll,安装完成之后会在Apache的根目录自动生成一个sll的默认配置文件,然后我们打开将 <VirtualHost *:443> 和里面的内容全部删掉
4、打开自己项目的Apache配置文件,将80端口改为443端口,在VirtualHost中添加如下内容:
SSLEngine on
SSLCertificateFile /etc/httpd/ssl/Apache/a.crt
SSLCertificateKeyFile /etc/httpd/ssl/Apache/b.key
SSLCertificateChainFile /etc/httpd/ssl/Apache/1_root_bundle.crt
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
其中2-4行就是你从其他地方申请下来证书,下载下来的证书里面的文件,
5、重启Apache,应该就能通过https访问了,再补充一条,将所有的http请求重定向到https,在VirtualHost,AllowOverride 改为 All,然后添加如下内容:
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R]
6、需要注意的是,由于Apache版本,服务器版本等原因,可能某些具体的操作不太一样,请灵活运用