ubuntu安装Let’s Encrypt证书实测
作者:matrix 发布时间:2017-01-15 分类:兼容并蓄 零零星星
Let’s Encrypt证书出来已经有很长时间,之前用主机未到期,也就干瞪眼。
现在手上拿了一台有设备,其实算下来价格也都差不多,国外的速度是慢点,但是好处很多。
测试环境:
ubuntu 14 64bit
lnmp 1.3
获取证书
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto certonly --standalone --email hhtjim@foxmail.com -d hhtjim.com -d www.hhtjim.com
# 若服务器已经占用80端口开启webserver则只需执行webroot:
# ./letsencrypt-auto certonly --webroot --email hhtjim@foxmail.com -d link.hhtjim.com
执行完上面三个命令之后会有图形界面出现
选择Agree之后出现这个也就完成了证书的获取
安装证书
修改域名对应下的nginx配置
进入/usr/local/nginx/conf/vhost目录找到和域名同名的conf文件
在server代码块中添加:
listen 443 ssl;
#listen [::]:80;
ssl on;
ssl_certificate /etc/letsencrypt/live/域名/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/域名/privkey.pem;
参考如下完整配置
server
{
listen 80;
listen 443 ssl;
#listen [::]:80;
ssl on;
ssl_certificate /etc/letsencrypt/live/hhtjim.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/hhtjim.com/privkey.pem;
server_name hhtjim.com www.hhtjim.com;
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/hhtjim.com;
include other.conf;
#error_page 404 /404.html;
include enable-php.conf;
include wordpress.conf;
if ($http_host !~ "^www.hhtjim.com$"){
rewrite ^(.*) https://www.hhtjim.com$1 permanent;
}
if ($scheme = "http"){
rewrite ^(.*)$ https://$host$1 permanent;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
location ~ /\.
{
deny all;
}
access_log /home/wwwlogs/hhtjim.com.log;
}
接着准备重启nginx:lnmp nginx restart
参考:loazuo
更新操作
按照网上大多执行的命令我这里就会出现交互界面,需要手动选择webroot目录
How would you like to authenticate with the ACME CA?
x x 1 Place files in webroot directory (webroot) x x
x x 2 Spin up a temporary webserver (standalone)
还好找到办法,只需要添加参数 --webroot -w 设置好存放web路径即可。最终参考如下
ubuntu下保存为sh文件。记得附加x执行权限。然后执行该sh文件即可自动更新证书.
#!/bin/sh
~/letsencrypt/letsencrypt-auto certonly --webroot -w /home/wwwroot/www.hhtjim.com/ --renew-by-default --email hhtjim@foxmail.com -d hhtjim.com -d www.hhtjim.com && lnmp nginx restart
若报错Failed authorization procedure...
则需要修改-w参数
为网站根目录
如:
-w /home/wwwroot/hhtjim.com/
且nginx配置中将.well-known加入白名单:
location ~ /.well-known {
allow all;
}
参考:
http://letsencrypt.readthedocs.io/en/latest/using.html
https://www.ubock.com/article/25
https://stackoverflow.com/questions/42269107/using-certbot-to-apply-lets-encrypt-certificate-failed-authorization-procedure
最后的定时执行
修改定时任务 crontab -e
0 0 1 * * /root/updateLetsEncrypt.sh
#每月1号执行sh脚本
重启定时服务 /etc/init.d/cron restart
peace
飘雪效果
作者:matrix 发布时间:2017-01-13 分类:零零星星
这个季节看到TGP的LOL新闻页面的飘雪效果挺好看的。顺手就copy了下
飘雪效果网上貌似大多数代码都是http://x-team.com 。
css,js,png文件都整理出来了也就记录下。 都取自15w.com
直接盗链
建议代码放到html中的body标签中的底部加载
<link rel="stylesheet" href="//www.15w.com/ui/pages/others/2016/snow/css/snow.css?v3" type="text/css" />
<script type="text/javascript" src="//www.15w.com/ui/pages/others/2016/snow/js/snow.js?v5"></script>
<script>
createSnow("img/", 30);
</script>
若是WordPress:
add_action('wp_footer', 'snow_footer');
function snow_footer()
{
if ('1' === date("n")) {//一月份才会有飘雪效果
print <<<R
<link rel="stylesheet" href="//www.15w.com/ui/pages/others/2016/snow/css/snow.css?v3" type="text/css" />
<script type="text/javascript" src="//www.15w.com/ui/pages/others/2016/snow/js/snow.js?v5"></script>
<script>
createSnow("img/", 30);
</script>
R;
}
}
文件本地化
文件: https://pan.baidu.com/s/1i5cAnhb#383t
提取码在#字符后面
注意需要修改snow.js 105行处代码
peace
P.S. 180206
jd页面的飘雪效果。依赖JQ
页面中添加画布div容器
<div class="snow-container" style="position: fixed; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 100001;"></div>
然后引入js
three.js和snow.js(可修改为本地的离线图片)
资源包:jd-snow
wp替换emoji源地址s.w.org
作者:matrix 发布时间:2017-01-11 分类:Wordpress 零零星星
wp的页面都会加载类似下面的的javascript代码用来显示emoji表情。
{
"baseUrl": "https://s.w.org/images/core/emoji/2.2.1/72x72/",
"ext": ".png",
"svgUrl": "https://s.w.org/images/core/emoji/2.2.1/svg/",
"svgExt": ".svg",
"source": {
"concatemoji": "https://www.hhtjim.com/wp-includes/js/wp-emoji-release.min.js?ver=dd887"
}
}
s.w.org毕竟是墙外的东西,很麻烦。将其替换为国内镜像地址。
WordPress functions中添加
替换emoji源 s.w.org
function filter_baseurl()
{
return set_url_scheme('//twemoji.maxcdn.com/72x72/');
}
function ilter_svgurl()
{
return set_url_scheme('//twemoji.maxcdn.com/svg/');
}
add_filter('emoji_url', 'filter_baseurl');
add_filter('emoji_svg_url', 'ilter_svgurl');
lnmp 1.3 安装 typecho 404错误
作者:matrix 发布时间:2017-01-02 分类:零零星星
修改对应域名的nginx配置文件
vi /usr/local/nginx/conf/vhost/域名
重新配置nginx的配置文件
server
{
。。。。。。
<strong>include typecho.conf;
include enable-php-pathinfo.conf;</strong>
。。。。。。
}
参考:https://bbs.vpser.net/thread-13341-1-1.html