所需材料:
一、域名1个。
二、虚服务器1台。
三、ssl证书1个。 php
前提准备:
一、域名最好要备案,在国内使用比较方便。
二、我推荐阿里云的ECS。(能够先领取一个代金券,购买主机有优惠:https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=ffsbbyn0 。)
三、ECS为Linux系统,安装的是AMH控制面板(如何安装amh控制面板:https://bbs.aliyun.com/read/143639.html)
四、阿里云能够免费申请ssl证书。
操做步骤:
一、申请免费1年的ssl证书(传送门:https://common-buy.aliyun.com/?spm=5176.2020520163.cas.29.N0xOPM&commodityCode=cas#/buy)。免费证书,只能使用一个域名,不支持主域名下的二级域名,请悉知。不过1个阿里云账号能够申请20个免费证书,对于普通帐户足够了。
二、购买完成后,须要补全信息。搜sslhtml
二、购买完成后,须要补全nginx
域名配置:apache
在Apache的安装目录下建立cert目录,而且将下载的所有文件拷贝到cert目录中。若是申请证书时是本身建立的CSR文件,请将对应的私钥文件放到cert目录下而且命名为a.key;api
打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到如下内容并去掉“#”。浏览器
打开 apache 安装目录下 conf/extra/httpd-ssl.conf 文件 (也多是conf.d/ssl.conf,与操做系统及安装方式有关), 在配置文件中查找如下配置语句:安全
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
SSLCertificateFile cert/a_public.crt
SSLCertificateKeyFile cert/a.key
SSLCertificateChainFile cert/a_chain.crt
Listen 443
<VirtualHost *:443>
DocumentRoot "C:xx"
ServerName www.xxx.com
ServerAlias xxx.com
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
SSLCertificateFile "C:\phpStudy\Apache\cert\public.pem"
SSLCertificateKeyFile "C:\phpStudy\Apache\cert\1523954142398.key"
SSLCertificateChainFile "C:\phpStudy\Apache\cert\chain.pem"
<Directory "C:/phpstudy/WWW/jswei7/v35320170814">
Options +Indexes +FollowSymLinks +ExecCGI
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
</VirtualHost>
重启 Apache。服务器
打开AMH控制面板,点击模块扩展里的下载模块,而后搜索SSL。如上图
而后点击下载、安装app
点击这个BBShijieSSL,管理模块。选择对应的域名。将你刚下载,解压后的nginx证书,对应的文件,打开、复制、粘贴、保存ide
最后一步:如何让http强制跳转HTTPS上去
上面已经作到了https访问网站,可是若是访问http仍是能够访问的,那么如何实现访问http时,自动跳转到https上去呢?且看下面的教程:
ftp打开以下地址
/usr/local/nginx/conf/vhost/
在上面的目录中,找到站点对应的.conf文件,而后编辑。
if ($server_port = 80) {
return 301 https://$server_name$request_uri;
}
if ($scheme = http) {
return 301 https://$server_name$request_uri;
}
error_page 497 https://$server_name$request_uri;
添加上面的脚本到文档中,以下图。
作完上面这一步以后,再到AMH的控制面板首页,重启一下nginx,稍等片刻,从新加载浏览器试试看,是否是已经成功了?
https://bbs.aliyun.com/read/303413.html?spm=a2c4e.11153987.0.0.266a6026gY5TdR (原文)