杜郎俊赏 - dujun.io

建站之图片旋转

手机拍摄的照片存在旋转的问题,借助 imagemagick 扩展解决。 安装扩展: sudo apt-get install imagemagick sudo apt-get install php-imagick 旋转图片: try { $imagick = new Imagick($imagePath); if ($orientation = $imagick->getImageOrientation()) { switch ($orientation) { case 8: //逆时针90°...

2017-05-18

建站之 gravatar 缓存

为解决 gravatar 头像访问慢和被墙的问题,可以做本地图片备份。 $url = 'https://secure.gravatar.com/avatar/' . md5($mail) . '?s=36&r=G&d=404'; $header = get_headers($url); if (empty($header) || false === strpos($header[0], '200')) { //此邮箱不存在 gravatar 头像 } else { //抓取头像图片 $image = file_get_contents($url); }

2017-05-18

建站之 yaf 框架

用 yaf 框架重新开发了整站。 ubuntu 下安装命令: sudo apt-get install php7.0-dev sudo pecl install yaf 修改php.ini,追加内容 [yaf] extension=yaf.so yaf.use_namespace=1 yaf.environ=develop

2017-05-17

建站之动态密码

为了安全,后台登录增加了动态密码。基于 GoogleAuthenticator 实现。 用法很简单,看 github 说明即会。 创建二维码时需要翻墙访问 google。

2017-05-05

建站之文字排版

hanzi封面
汉字、字母、数字、标点符号等混合的情况下,排版的美观是非常重要的。如: 本站使用 hanzi.pro 的排版方案,在汉字与字母数字混排时自动增加间隔等。 调用非常简单,引入 css 和 js 就可以了。注意,js 要需要放在页面底部。 ctrl + a 就能明白效果了。

2017-05-05

建站之字体子集

webfont封面
本站主标题 杜郎俊赏 使用的是字体子集技术。 完整的字体文件一般很大,有些场景只需要固定的几个字,比如这个主标题只用到四个字,把用到的字抽离出来就小很多,可以做成 webfont。这就是字体子集技术。 百度 FEF 出品的 Fontmin 是非常方便的字体子集化工具。 下载客户端,安装后将字体文件拖入,填写要抽取的文字,点击生成就可以了。直接生成 ttf/eot/woff/svg/css。

2017-05-04

建站之防盗链

防止图片、视频等资源被盗链,nginx vhost 配置如下 location ~ .*\.(gif|jpg|jpeg|png|bmp|zip|mp4|webm)$ { valid_referers none *.dujun.io dujun.io; if ($invalid_referer) { rewrite ^/ https://cdn.dujun.io/image/403.png; } } 要点:需要增加 none 参数,否则低版本 iPhone 等唤起系统原生播放器来播放视频的情况会被误伤。

2017-05-04

建站之 CSP

Content Security Policy,简称 CSP,定义页面可以加载哪些资源,增强安全性。 我的配置如下 add_header Strict-Transport-Security "max-age=31536000"; add_header X-Frame-Options deny; add_header X-Content-Type-Options nosniff; add_header X-XSS-Protection '1; mode=block'; add_header Content-Security-Policy "default-src https: 'self'...

2017-05-04

建站之 HTTPS

本站部署了全站 https,基于 Let's Encrypt 提供的免费证书方案。 在 Ubuntu 中部署 安装 letsencrypt sudo apt-get install letsencrypt 生成证书 当前服务器 ip 必须是目标域名 dns 中。 必须先停止 nginx / apache 等服务。 按照屏幕指示操作,填写邮箱等信息。 sudo letsencrypt certonly --standalone -d dujun.io 生成的证书文件在 /etc/letsencrypt vhost 配置 listen 443 ssl; server_name dujun.io...

2017-05-04

建站之 IO 域名

domain-io封面
本站用的是我姓名拼音的 io 域名,dujun.io。 .io 是 [british indian ocean territory] 英属印度洋领地的国别域名。但科技行业的人喜欢 io 域名是因为 I/O 是计算机的本质。知名的网站如: redis.io github.io jenkins.io icomoon.io pangu.io 我这个域名是在 gandi.net 购买的,198 元/年,相对最便宜。

2017-05-04

分页: 1 2 3