部署 HTTPS 访问 ( https:// )

时间:2023-03-08 17:43:58

简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。

http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。

通过域名在腾讯云获取SSL证书

https://console.cloud.tencent.com/ssl

点击申请证书,即可获取免费申请证书入口

部署 HTTPS 访问 ( https:// )

证书一般在十几分钟就可以颁发下来

部署 HTTPS 访问 ( https:// )

将证书下载至本地,并存放至C:\phpStudy\Apache\conf\dongxiaodongssl

部署 HTTPS 访问 ( https:// )

PHPStudy的部署

打开ssl扩展

部署 HTTPS 访问 ( https:// )

进入配置文件:

部署 HTTPS 访问 ( https:// )

去掉LoadModule ssl_module modules/mod_ssl.so的注释(删除前面的“#”)

部署 HTTPS 访问 ( https:// )

添加语句Include conf/vhostssl.conf

部署 HTTPS 访问 ( https:// )

在Apache/conf环境下新建vhostssl.conf文件,写入如下内容:

其中域名需要替换为你的域名,如www.baidu.com,均不需要加单双引号

 Listen
<VirtualHost *:>
ServerName xxx:
DocumentRoot "C:\phpStudy\WWW"
ServerAlias 域名
SSLEngine on
SSLCertificateFile "C:\phpStudy\Apache\conf\dongxiaodongssl\Apache\2_域名.crt"
SSLCertificateKeyFile "C:\phpStudy\Apache\conf\dongxiaodongssl\Apache\3_域名.key"
SSLCertificateChainFile "C:\phpStudy\Apache\conf\dongxiaodongssl\Apache\1_root_bundle.crt"
</VirtualHost>

实现自动https跳转

如果需要实现http自动转换为https则需要在网站的根目录(C:\phpStudy\WWW)下建立.htaccess文件

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

完成部署

完成部署必须要重启web服务器,使其修改生效

部署 HTTPS 访问 ( https:// )