之前自己的博客是用 hexo 做的,后面想做一个有后台的博客就打算用 vue 加 node 来试试,于是就有了这个博客。 项目地址
W-Blog 是一个基于 vue 和 node 的小小小博客 前端用 vue,后端用 egg.js
│ .autod.conf.js │ .eslintignore │ .eslintrc │ .gitignore │ .travis.yml │ app.js // 项目启动前执行,比如写入管理员 │ appveyor.yml │ package.json │ README.md │ ├─app │ │ router.js // 服务端路由 │ │ │ ├─controller │ │ admin.js // 后台相关 controller │ │ client.js // 前台相关 controller │ │ login.js // 登录相关 controller │ │ page.js // 页面相关 controller │ │ │ ├─extend │ │ helper.js │ │ │ ├─middleware │ │ auth.js // 登录验证中间件 │ │ │ ├─model │ │ Article.js // 文章 model │ │ Category.js // 分类 model │ │ Tag.js // 标签 model │ │ User.js // 用户 model │ │ │ ├─public │ │ │ │ │ ├─admin // admin 端 │ │ │ ├─dist // 打包生成后的目录 │ │ │ └─src // admin 端源文件 │ │ │ │ │ └─client // 用户端 │ │ ├─dist // 打包生成后的目录 │ │ └─src // 用户端源文件 │ │ │ └─service // service 部分用来执行具体的操作 │ admin.js │ client.js │ login.js │ ├─config │ config.default.js // 项目配置相关 │ plugin.js │ └─test // 测试相关 └─app └─controller home.test.js
module.exports = appInfo => { return { keys: appInfo.name + '_1432030565447_3632', mongoose: { clients: { blog: { url: 'mongodb://127.0.0.1/blog', options: { user: 'test', // 数据库的用户名 pass: 'test' // 数据库的密码 }, } } }, // 初始化管理员信息 user: { userName: 'admin', password: 'admin', }, session: { maxAge: 3600 * 1000, }, jwt: { cert: 'jsonwebtoken' // jwt 秘钥 }, /** * markdown 编辑器的图片上传用的是七牛存储 * 所以需要配置七牛的 key */ qiniu: { // 这里填写你七牛的 Access Key 和 Secret Key ak: '', sk: '' } } };
# 安装服务端依赖 npm install # 开启 mongodb mongod --dbpath '你数据库的目录' # --auth 如果开启密码,要加上这个命令 # 运行服务 npm run dev # 进入前台目录 cd ./app/public/client/src # 安装前台依赖 npm install # 运行前台项目 npm run dev # 进入后台目录 cd ./app/public/admin/src # 安装后台依赖 npm install # 运行后台项目 npm run dev # 即可通过 http://127.0.0.1:8080 访问 # 开发阶段直接通过 webpack 的 devserver 访问 # 代理请求已经配置好,可在 config 下配置 proxyTable 更改
# 在前台和后台目录分别 npm run build # 在项目根目录 npm install --production # 启动 npm start # 打包后可以通过 # http://127.0.0.1:7001/ 和 http://127.0.0.1:7001/admin 来访问前台和后台
![]() | 1 xiaoz 2018-08-25 13:58:13 +08:00 Vue 来渲染页面搜索引擎是无法获取到内容的吧 |