git配置多个ssh-key

git是现在最为流行的代码管理方式,除了个人使用的github,在公司内通常也会架设gitlab服务做项目代码管理。那么,就需要正确地管理本地ssh公钥,来正常使用不同的git服务。

阅读全文 »

shim和polyfill的区别

在Javascript相关文章中,经常出现两个词,分别是shim和polyfill,两者含义非常相近,都有封装、兼容的意思,但又不尽相同。

阅读全文 »

如何让mp4边下边播

问题描述

使用H5 video标签播放mp4资源,部分视频需要下载完整才能播放,有些则可以边下载边播放。

决定因素

元数据 —— 编码等级、分辨率、色域、码率、帧率、位深、时长等等;

视频何时可播放取决于视频元数据位置,如其位于文件末尾,播放器播放时需要读取时长就需要下载整个视频才能读到。相反的,若把元数据放到文件头部,就可提前播放时间点。

有些转码器会把元数据写到文件尾部,如FFmpeg将视频转换成MP4,解决办法就很简单,使用新的转码器把元数据放到头部即可,比如qt-faststart

阅读全文 »

HTML发展史

html发展历史:

阅读全文 »

Mac Mail配置QQ企业邮箱

打开Mail应用,若你在此之前没有配置任何邮箱,你将看到如下界面:

阅读全文 »

node及node模块升级

node版本升级原始方法,通过下载源码在本地重新编译,过程相对繁琐。实际上,node中有一个版本管理模块n,可一键升级node版本。

第一步,先安全n模块

npm install -g n

第二步,一键升级

升级到稳定版:n stable
升级至指定版:n 0.10

阅读全文 »

mac版代理开发工具

在移动端h5开发的时代,比任何时候都需要代理服务,来帮助我们调试定位网络请求问题。

windows平台可以使用fiddler,但作为mac用户,只能通过虚机启动windows来使用,实为低效繁琐;更为头疼的是,新一代mac未自带网线插口,导致部分虚拟机无法开启桥接网络共享模式,带来的后果便是,移动设备通过wifi接入网络和虚拟机网络的默认网关不一致,此时并无法真正实现代理服务。当然可以通过更换虚拟机、使用USB转接网线解决,这就进一步增加了开发成本。

因此,在这里推荐mac端的一种代理服务工具:charles。使用截图如下:

功能完全媲美于fiddler,甚至提供了模拟慢网的功能,这和移动端开发契合度非常高。拥有这样的开发利器,再也不用为定位问题而担忧.

如何开发并发布node插件到npm平台

无论是为了自己编写的node程序可以方便第三方使用(足够通用),还是仅仅出于对团队协作考虑(仅团队中使用),使用npm平台都是不错的选择,操作也很简介。

一,在npm平台创建账号

理所当然,当上传压缩包到一个公用平台,没有身份标识显然行不通。因此,第一步需要到npm官方网站注册账号,地址:https://www.npmjs.org/,记住你的name 和 pwd。

二,编写node程序

这里特殊说明,如果你想开发grunt插件,请使用grunt官方提供的创建插件方法初始化项目,具体请参考:http://www.gruntjs.org/docs/creating-plugins.html.

通过这种方法,在package.json配置文件中会自动添加keyword:gruntplugin ,有了这个配置项即可保证你开发的npm模块被收集到grunt插件平台http://gruntjs.com/plugins

若只是普通的node库,则忽略此步骤。

阅读全文 »

使用apache开启proxy服务

1, 挂载apache相关 proxy模块

打开httpd.conf,把以下代码前的注释符去掉

1
2
3
4
5
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so

2,启动proxy服务

1
2
3
4
5
6
ProxyRequests on
<Proxy *>
Order deny,allow
Allow from all
#Deny from 127.0.0.1
</Proxy>

3,设完手工,移动终端即可不用绑定host访问开发机上的测试页面

mac:zsh配置

Zsh是一款功能强大的交互式 shell,与 Bash 相比,Zsh 下面几点表现令人印象深刻:

  • 自动补全
  • 拼写纠错
  • 定制性强
  • 美观的命令提示符(这点吸引力最大)Setup

一,安装zsh

brew install zsh 或 port install zsh

二,设置zsh为默认shell

首先查看zsh路径,运行which zsh,通常显示为 /bin/zsh,然后执行vim /etc/shells
在文末增加:/bin/zsh

将zsh设置为默认的Shell:chsh -s /bin/zsh

三,插件管理

oh-my-zsh是基于zsh的功能做了一 个扩展,方便的插件管理、主题自定义,以及漂亮的自动完成效果。

安装过程全自动:

1
2
via `curl`
curl -L https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh | sh