Giter Site home page Giter Site logo

iblog2's Introduction

iBlog2

基于 Node.js 的个人开源博客系统,采用响应式布局,支持移动设备直接访问,功能全面,美观大方。
不仅仅是博客,更是 Demo,适合新人入门学习的完整项目。
(基于 ASP.NET 的版本请点击这里

在线实例

个人博客 http://www.skysun.name/

Wiki

整理了 iBlog2 中涉及 Node.js 及部分前端技术的基本功能与知识点,适合新手学习、备查。

功能模块

博客

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

留言

关于

后台管理

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

技术构成

快速开始

准备条件

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

安装依赖

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

参数配置

根据实际情况修改 config.json 配置文件,DbPath 是MongoDB路径,RedisHost 是Redis所在ip,RedisPort 是Redis端口号。

{
  "DbPath": "mongodb://localhost/iBlog2",
  "RedisHost": "127.0.0.1",
  "RedisPort": 6379
}

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

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

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

启动站点

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

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

Enjoy it! 😄

关于缓存

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

线上部署

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

安装

$ npm install -g pm2

使用

$ pm2 start ./bin/www --node-args="--harmony-proxies"

许可协议

The MIT License (MIT)

Copyright (c) 2016 Sky

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.

iblog2's People

Contributors

eshengsky avatar jarvin-guan avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.