程序员建站极简指南
1. 购买域名
个人推荐 GoDaddy 老品牌、稳定、活动力度还不小(非店大欺客),且支持支付宝付款;缺点是不支持中文。 - 很久之前用过 Bluehost,体验很差(主要是慢),这次没试,刚看了一下,已经支持中文了,技术支持应该比之前会好一些。 - 这次还看了糖果主机 Sugarhosts ,支持中文和支付宝付款,不过笔者订购的时候比 GoDaddy 贵一些,而且生效时间比 GoDaddy 长(交完钱之后挺长时间都是“待定”状态,而 GoDaddy 申请完就生效了);最坑爹的是域名服务不支持退款,跟它客服沟通了半天,才把钱给退了(买服务的时候一定要把服务条款看清,慎之慎之)。
P.S. 多说一句,目前最火(贵)的 “高大上” 域名顺序是(.com域名性价比较高):
.io > .me > .in > .xyz > .cc > .com > .org > .net > .info
2. 购买 VPS
一般的虚拟主机限制太多(当然最便宜),而独立服务器又太贵(个人试水的时候完全没必要),这时候 VPS 就提供了一个个人建站性价比最高的解决方案:你可以随便折腾你的系统(这点对程序员来说非常重要),又花费不高。
这里强烈推荐 Linode,高度可定制、速度还可以(国内用户建议选择日本机房),最基础(便宜)的版本 Linode 1GB 每月10美元(不过目前好像这个版本没有日本机房了,囧);你还可以同时选择 Vuler 和 DigitalOcean 对 Linode 进行容灾备份,它们的最基础价格都是每月5美元。
购买好 vps 以后,你就可以把你的 IP 绑定到你的域名上,准备提供对外网站访问了。
当然,还有一些安全设置、网络高级配置等等,可以按照Linode的文档库中所讲的一项一项设置。
3. VPS 环境设置
笔者的目的是试水个人网站开发,不采用传统的LAMP架构;数据存储目前计划是使用免费的云存储(如七牛云),开发语言选择 Go(Full Stack 解决方案),服务器代理用 Nginx;还可以尝试 Docker,看看是否能建立一套不一样的生态体系。
Go 环境搭建
先安装 go1.4
(1) 下载源码
(2) 设置环境
增加如下设置
(3) 安装
(4) 验证安装
此时你应该能看到如下信息
(5) 为了下面能够顺畅安装 go1.5,把源码拷到 $GOROOT
下,并改名
再安装高大上的 go1.5
(1) 获取源码
(2) 编译
(3) 验证安装
此时你应该能看到如下信息
(4) (Optional) 源码到 GOROOT 下并删除 go1.4
(5) 设置 go 工作环境
(6) 安装有用的 go tools
(7) (Optional) 搭建 web 网站,推荐一个非常好用的 Go 框架 beego
至此,你的 Go 环境就完全设置好了,以上是在 Ubuntu14.04 LTS 上亲测可行的源码安装方式,更详细的信息,可以参考其官方文档。
Nginx 环境
(1) 获取源码
(2) 编写 Buildfile
内容如下:
(3) 安装依赖
(4) 源码安装
(5) 验证安装
如果看到类似如下信息,证明nginx安装成功
Docker 环境
关于Docker环境的安装,可以参考我这篇文章,这里再简单列一下:
(1) 获取最新的 docker package
(2) 创建 docker 用户组并添加到你的用户
(3) 更新最新的 docker engine
(4) 验证安装
(5) (Optional) 获取 docker 源码
4. SS上网配置
天朝的上网大家都懂的,为了自由地获取信息,笔者曾经使用过多种不同的方法,早期以免费为主,包括
它们最大的缺点是不稳定,下面介绍一种基于 ShadowSockes 的“安全”上网方法,不多说,步骤如下3:
(1) 在你的 VPS 上运行 shadowsocks-server:
并配置 config.json, E.g. 你的 server 开启 8088 端口提供服务:
最后启动
(2) 在你的本机运行 client:
并配置 config.json,E.g. 本机开启 7070 端口进行服务:
最后启动
(3) 这时,你就可以用如下配置在本机安全上网了:
比如,你可以配置 chrome 的 SwitchyOmega 插件,新建 profile 把上述 proxy 信息填进去,保存后使用此 profile,chrome 访问 https://www.google.com/ncr,bingo :) 享受你的自由吧!
至此,环境就基本搭好了,可以继续折腾你的个人网站了。