0%

本站建立

建站分享

遵循大家都默认的一个规则——建立好站点之后,分享自己建立站点的过程。

租用服务器

首先我在租用了搬瓦工的VPS,VPS运行cent os 6.系统环境对于个人站点来说不是非常重要,ubuntu,debian,甚至red hat都可以,看个人习惯。

安装nginx

nginx就是一个软件,它监听着计算机的80端口,当检测到有浏览器访问当前计算机的IP地址的时候(浏览器访问一台计算机默认访问80端口),nginx就会返回用户之前写好的网页给浏览器,完成了一个网站的访问过程。在linux下安装nginx还是非常简单的。
debian/ubuntu通过以下命令来安装nginx:

1
$ sudo apt-get install nginx

cent os/red hat 通过以下命令

1
$ sudo yum install nginx

首次安装还nginx之后它默认启动了,但是计算机重启之后,nginx不会随系统启动,可以手动启动nginx

1
$ sudo service nginx start

或者让nginx随系统启动

1
$ cat sudo service nginx start >> /etc/profile

注意“>>”是两个,如果提示权限不足,就切换到root用户,使用:

1
$ su root

输入root用户密码

安装hexo

nginx给浏览器返回网页,这个网页就得自己来弄了,nginx可不会帮你,但是不会写网页代码怎么办?用来生成网页的工具很多,这里我使用了hexo,这个是一个台湾的大学生开发的用来生成静态网页的软件,真的佩服人家。
hexo依赖于node.js,首先在电脑上安装node.js,linux端可以这样

1
$ curl https://raw.github.com/creationix/nvm/master/install.sh | sh

或者

1
$ wget -q0- https://raw.github.com/creationix/master/install.sh | sh

然后重启终端,输入:

1
2
3
$ nvm install 4
$ npm install -g hexo-cli
$ npm install hexo-deployer-rsync --save

完成node.js 和部署插件rsync的安装
windows端可以到node.js的官网下载msi包安装后,在cmd输入:

1
2
$ npm install -g hexo-cli
$ npm install hexo-deployer-rsync --save

现在可以输入:

1
$ hexo init blog

来新建一个名为blog的文件夹,这个文件夹的名字自己取,进入这个文件夹,输入

1
$ hexo s --debug

看到

1
2
15:14:02.409 INFO  Hexo is running at http://localhost:4000/. Press Ctrl+C to stop.
15:14:02.432 DEBUG Database saved

的字样后,打开浏览器,访问localhost:4000,看看能否打开一个hexo的网页,能打开的话,证明hexo已经能在电脑上运行了。
然后编辑blog文件夹下的”config.yml“文件,在大约73行,”theme”后面的就是hexo生成静态网页的时候所使用的主题,本站所使用的主题是next,主题存在于blog文件夹下的them文件夹内。
在约80行左右,会有”deploy:”字样,这里填写的是部署网站的时候所用的一些组件需要的参数,如果按照本博客所说来安装hexo的话,可以参照以下填写方法:

1
2
3
4
5
6
7
8
9
deploy:
type: rsync
host: 0.0.0.0 //这里填写服务器的IP地址
user: root //这里填写部署网站是登陆服务器所用的用户
root: /usr/share/nginx/html/ //这里是nginx默认的服务器站点目录,文末细说
port: 26487 //这里是登陆服务器所用的端口,也就是ssh所用的端口
delete: false //下面三个可以参照我的填法,也可以自己更改
verbose: true
ignore_errors: false

在本地生成网页静态文件并部署到网站

切换到blog文件夹内(windows可以使用cmd,linux使用终端),输入命令

1
$  hexo new "blog"

然后在source的_posts_文件夹下面就会生成一个blog.md的文件,使用任何一个文本编辑器编辑这个文件,把想要写在博客上的东西直接编辑到这个文件内,就可以了。
然后切换到blog文件夹,输入:

1
$  hexo g

就可以生成网页静态文件了,生成的网页静态文件在public文件夹内,然后使用:

1
$  hexo d

就可以将网页文件部署到服务器,打开浏览器,就能看到做好的网站了。

一些小总结

先说一下nginx,nginx会向浏览器返回网站的网页文件,这些网页文件默认在“/usr/share/nginx/www/”下面,有时候不一定在“www”下,可能是“html”文件夹,我自己的服务器就是“html”。
部署便是讲已经做好的网页文件上传到服务器的这个文件夹下,浏览器便能正常访问到做好的网页。

然后说一下config.yml文件的”root:”,冒号后面是nginx的工作目录,nginx安装后默认一般都是”/usr/share/nginx/XXX/“下面,hexo部署的时候,便会将网页部署岛这个文件夹下面。

PS:我尝试在windows部署网站,但是遇到一些问题,第一次是环境错误,各种百度之后,可以成功部署,但部署之后无法访问,提示“403 forbidden”,便要手动将“/usr/share/nginx/XXX/”目录下面的所有文件夹(包括子文件夹)的属性改为775,文件属性改成664,才可以访问。