备案成功后,可以通过域名访问网站了。这时就可以申请免费SSL,配置网站https访问了。
这里使用的是acme.sh
,由于访问国外网络受限,这里只展示APhpWeb的配置方式,更多详细文档可以去github查看。
国外网不好,文档也比较卡,这里使用root
用户进行的配置。
# 使用git下载源码 git clone https://github.com/acmesh-official/acme.sh.git # 进入目录并安装 cd acme.sh/ ./acme.sh --install -m xxx@foxmail.com # 设置命令别名 alias acme.sh=~/.acme.sh/acme.sh
生成证书需要验证网站的访问权限,会在网站根目录下创建.well-known
目录,
这里要注意配置web服务器,允许访问该隐藏目录下的文件
# nginx vhost 配置隐藏目录可访问 location ~ /\.well-known/ { allow all; }
# 生成证书 acme.sh --issue -d aphpweb.com -d www.aphpweb.com --webroot aphpweb/current/public/
# 创建证书目录 mkdir /etc/nginx/ssl # nginx 证书安装 acme.sh --install-cert -d aphpweb.com \ --key-file /etc/nginx/ssl/aphpweb.com.key \ --fullchain-file /etc/nginx/ssl/aphpweb.com.crt \ --reloadcmd "service apache2 force-reload"
ssl on; ssl_certificate ssl/aphpweb.com.crt; ssl_certificate_key ssl/aphpweb.com.key; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on;
acme.sh --upgrade --auto-upgrade
crontab -l
查看,接下来就是等待,看证书过期前是否会自动更新。