Skip to content

iblueio/iblue-tech

Repository files navigation

iBlue.tech

基于 Node.js 的个人开源博客系统

在线实例

个人博客 http://iblue.tech/

功能模块

博客

  • 文章列表页
  • 文章详细页

留言

关于

后台管理

  • 网站统计
  • 博客管理 - 新的文章
  • 博客管理 - 分类管理
  • 博客管理 - 文章管理
  • 评论管理
  • 留言管理
  • 关于管理
  • 缓存管理
  • 异常管理
  • 系统设置

技术构成

快速开始

准备条件

安装最新版Node.jsbowerMongoDBRedis(可选)。
(注:如果使用Windows平台,可以去https://github.com/MSOpenTech/redis/releases下载安装Redis)

安装依赖

  • 服务端依赖
$ npm install
  • 客户端依赖
$ bower install

参数配置

根据实际情况修改 config.json 配置文件,DbPath 是 MongoDB 路径,Redis 是缓存配置,Redis.Active 表示是否启用Redis缓存(默认不开启),Redis.Host 表示 Redis 服务器 ip 地址,Redis.Port 表示 Redis 端口号。

{
  "DbPath": "mongodb://localhost/iblue",
  "Redis": {
      "Active": false,
      "Host": "127.0.0.1",
      "Port": 6379
  }
}

后台管理员账号信息在 config/account.json 中配置,默认管理员账号 admin ,密码 123456 ,密码需md5加密存储。

{
  "Id": "1",
  "UserName": "admin",
  "Password": "e10adc3949ba59abbe56e057f20f883e"
}

在 "后台管理-系统设置" 页面中,支持以可视化方式配置其余参数。

启动站点

注意:对于node v4及以下版本,需要添加 --harmony-proxies 参数。

  • 方式1:普通模式启动
$ node ./bin/www 
  • 方式2:快速启动
$ npm start
  • 方式3:守护进程启动
    守护进程能够发挥多核CPU性能,并在出现异常退出后延迟30秒自动重启工作进程。
$ node daemon.js

打开浏览器,访问 http://localhost:19031/

Enjoy it! 😄

关于缓存

文章分类、文章列表、文章详细等都作了缓存处理,若想使修改立即可见,需要在"后台管理-缓存管理"页面手动清除缓存。

线上部署

推荐使用 pm2 进行线上Node.js的进程管理和持久运行。

安装

$ npm install -g pm2

使用

$ pm2 start ./bin/www

许可协议

The MIT License (MIT)

Copyright (c) 2018 Bingmang

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Releases

No releases published

Packages

No packages published