Nginx 升级 HTTP / 2 指引

引言 HTTP/2 目前已经逐渐推广开来,很多站点都开始迁移至 HTTP/2 ,比如 https://v.qq.com/ 或者 https://www.google.com.hk/ 都启用了 HTTP/2; 我们可以先看下浏览器的支持情况: HTTP/2 相对 HTTP1 详情 »

解决 Nginx 413 Request Entity Too Large

最近做 Node 上传服务,NGINX 代理,因此本地测试没问题,但是发到线上 代理抛出异常; 其实这个也很简单,重新配置下 Nginx 的上传限制: server { ... listen 80; server_name localhost; client_max_body_size 20M; ... } 详情 »

解决 no "ssl_certificate" is defined nginx 配置问题

近期开始陆续把 https 证书往 EC2 上开始部署;由于 Chrome 67 版本对 https 的要求更高了,加上近期会实验 http2,所以不得不开始把 HTTPS 启用了;之前写过为什么没有启用 SSL 的原因,很大程度上是因为 vanthink.cn 的七牛图床没有开启 HTTPS 导致这边的前端静态资源一直没能够使用到 https 详情 »

引入 Brotli 进行 Web Server的压缩

目前我们大多数网站都是启用的 gzip 来进行 资源传输的压缩,这有利于我们更加快速的访问我们的网站;但是除了 gzip 外,我们或许还有别的选项,而且性能会更好,比如 Facebook 便是启用的 Brotli 算法; Brotli Brotli 最初发布于2015年,用于网络字体的离线压缩。Google软件工程师在2015年9月发布了包含通用无损数据压缩的Brotli增强版本,特别侧重于HTTP压缩。新版本还展现了跨平台的性能改进,以及减少解码所需的内存。 与常见的通用压缩算法不同,Brotli使用一个预定义的120千字节字典。该字典包含超过13000个常用单词、 详情 »

使用Vagrant Box + Nginx 不更新静态资源解决方案

第一次使用Vagrant Box ,或多或少会遇到这么一个问题,就是切下来的代码,可以运行,改接口也可以,但是静态资源(比如css,js)始终却改动不生效,有的会出现一系列红点(用chrome查看的话),其实这种问题只需要一个配置选项就OK了。 # If you use nginx as your main web server # add this directive in 详情 »

使用 Supervisor 保持node服务一直启用(Thinkjs 案例)

很多node程序在退出console后会自动关掉进程,解决方法有很多,诸如 pm2,当然今天主要说下Supervisor。 安装 Debian/Ubuntu: apt-get install supervisor Fedora: yum install supervisor Most other distributions: easy_install supervisor 配置 你可以编辑 /etc/supervisor/supervisor. 详情 »