°

如何在VPS上面搭建hexo博客(转载请注明)

本文出自:http://blog.freedom.moe

本人为大家讲解一下怎么在VPS搭建hexo博客,之前都是github搭建教程,很少有VPS这方面的,这教程是本人折腾出来的,hexo博客具有全静态化,响应速度快,轻量级等优点,是wp没法比的。

如下介绍:

什么是hexo

hexo是一个基于Node.js的静态博客程序,可以方便的生成静态网页托管在github和Heroku上。作者是来自台湾的@tommy351。引用@tommy351的话,hexo:

快速、简单且功能强大的 Node.js 博客框架。

A fast, simple & powerful blog framework, powered by Node.js.

类似于jekyll、Octopress、Wordpress,我们可以用hexo创建自己的博客,托管到github或Heroku上,绑定自己的域名,用markdown写文章。本博客即使用hexo创建并托管在github上。

1. 搭建hexo博客:

首先你得安装nodejs环境,以Ubuntu和CentOS为例,其他系统可以在https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager参考,如下:

Ubuntu安装方法:

curl -sL https://deb.nodesource.com/setup | sudo bash ?        开始下载

sudo apt-get install -y nodejs                    开始安装

CentOS安装方法:

curl -sL https://rpm.nodesource.com/setup | bash ?            开始下载

yum install -y nodejs                     开始安装

yum install gcc-c++ make # or: yum groupinstall ‘Development Tools’      安装工具包,也可以不装

Git安装方法:

Ubuntu       sudo apt-get install git-core    ;       Cent OS        yum install git-core

2.安装hexo:

用npm命令安装hexo, 任意位置都可以

npm install -g hexo

安装完成后,再输入 hexo init <你的网站所在的目录>

cd <你的网站所在的目录>

安装依赖包    npm install

这样就安装完成了,不过没法在网站查看,先配置nginx的conf文件,我的是lnmpa环境,以我的环境为例,conf文件就是/usr/local/nginx/conf/vhost的虚拟机conf文件。文件配置如下:

server {

listen 80;

root /home/wwwroot/example.com/;

server_name hexo.freedom.moe;

access_log /home/wwwlogs/example.com.log;

error_log /home/wwwlogs/example.com.log;

location ~* ^.+.(ico|gif|jpg|jpeg|png)$ {

root /home/wwwroot/example.com/public/;

access_log off;

expires 1d;

}

location ~* ^.+.(css|js|txt|xml|swf|wav)$ {

root /home/wwwroot/example.com/;

access_log off;

expires 10m;

}

location / {

root /home/wwwroot/example.com/;

if (-f $request_filename) {

rewrite ^/(.*)$ /$1 break;

}

}

按照上面去做。

接着在网站目录下修改文件_config.yml,注意在 :后面空一个格,不然出错,如下:

# Hexo Configuration

## Docs: http://hexo.io/docs/configuration.html

## Source: https://github.com/hexojs/hexo/

# Site

title: Hexo

subtitle:

description:

author:

email:

language: zh-CN

# URL

## If your site is put in a subdirectory, set url as ‘http://example.com/child’ and root as ‘/child/’

url: http://example.com/            修改为你的网站

root: /                            不用修改

permalink: :year/:month/:day/:title/

tag_dir: tags

archive_dir: archives

category_dir: categories

code_dir: downloads/code

permalink_defaults:

# Directory

source_dir: source

public_dir: public

# Writing

new_post_name: :title.md # File name of new posts

default_layout: post

titlecase: false # Transform title into titlecase

external_link: true # Open external links in new tab

filename_case: 0

render_drafts: false

post_asset_folder: false

relative_link: false

highlight:

enable: true

line_number: true

tab_replace:

# Category & Tag

default_category: uncategorized

category_map:

tag_map:

# Archives

## 2: Enable pagination

## 1: Disable pagination

## 0: Fully Disable

archive: 2

category: 2

tag: 2

# Server

## Hexo uses Connect as a server

## You can customize the logger format as defined in

## http://www.senchalabs.org/connect/logger.html

port: 80            换成80端口

server_ip:          去掉

logger: false

logger_format: dev

# Date / Time format

## Hexo uses Moment.js to parse and display date

## You can customize the date format as defined in

## http://momentjs.com/docs/#/displaying/format/

date_format: MMM D YYYY

time_format: H:mm:ss

# Pagination

## Set per_page to 0 to disable pagination

per_page: 10

pagination_dir: page

# Disqus

disqus_shortname:

# Extensions

## Plugins: https://github.com/hexojs/hexo/wiki/Plugins

## Themes: https://github.com/hexojs/hexo/wiki/Themes

theme:  landscape

exclude_generator:

# Deployment

## Docs: http://hexo.io/docs/deployment.html

deploy:

type:

修改完了之后保存,接着cd你网站所在的目录,重启nginx,接着输入 hexo g    ,如有缓存文件的话先hexo clean再hexo g。

大功告成了。网站演示例子:http://hexo.freedom.moe/

麻烦捐助我一次》当作请我吃饭一样

打赏
  喜欢