项目目标
- 完全在本地搭建开发环境
 - 贴近企业真实应用场景
 
技术难点分析
登录
- 用户名密码校验
 - token 生成,校验和路由过滤
 - 前端 token 校验和重定向
 
电子书上传
- 文件上传
 - 静态资源服务器
 
电子书解析
- epub 原理
 - zip 解压
 - xml 解析
 
电子书的增删改
- mysql 数据库应用
 - 前后端异常处理
 
epub 电子书
epub 是一种电子书格式,他的本质是一个 zip 压缩包
nginx 服务器搭建
安装 nginx
- 通过下载官网安装包,下载地址:http://nginx.org/en/download.html
 
修改配置文件
打开配置文件 nginx.conf
我这里是 windows
- 在 nginx 根目录创建 user 目录,创建 user/upload.conf
 - 这里 G:\vue-element-admin\upload 是资源文件路径,../user/upload.conf 是额外的配置文件,当前把 ../user/upload.conf 配置文件的内容加入 nginx.conf 也是可行的!
 - 解决 Windows 同学路径配置错误启动出现 500 异常
windows 中不允许在 nginx 配置文件中出现转义字符,比如 \resource 这样的路径会被编译为:esrouce,从而导致 nginx 启动异常,我们可以更换文件夹名称来解决这个问题。 - upload.conf 配置
 
- nginx.conf 最后一个 } 上面引入 upload.conf
 
include ../user/upload.conf;
upload.conf 配置
server
{ 
  charset utf-8;
  # 监听的端口
  listen 8089;
  server_name http_host;
  # 文件目录
  root G:\\vue-element-admin\\upload\\;
  # 是否打开一个索引,为 on 时访问目录可以看到所有目录
  # 为 off 时,访问就是 403 了,线上一定要设置成 off,或者不写默认是 off
  autoindex on;
  # 表示用户每次请求都会加一个 Cache-control 
  # 表示不适用缓存,如果不加 nginx 会默认设置缓存,也可以自己设置缓存的时间
  add_header Cache-Control "no-cache, must-revalidate";
  location / { 
    # 设置所有请求都添加一个跨域的访问
    # 实际看法不能这一设置,要用具体的域名
    add_header Access-Control-Allow-Origin *;
  }
}
如果需要 https 配置 在加一个server
server
{
  listen 443 default ssl;
  server_name https_host;
  root /Users/sam/upload/;
  autoindex on;
  add_header Cache-Control "no-cache, must-revalidate";
  location / {
    add_header Access-Control-Allow-Origin *;
  }
  ssl_certificate G:\\vue-element-admin\\upload\\xxx.xxx.com.pem;
  ssl_certificate_key G:\\vue-element-admin\\upload\\xxx.xxx.com.key;
  ssl_session_timeout  5m;
  ssl_protocols  SSLv3 TLSv1;
  ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
  ssl_prefer_server_ciphers  on;
}
- ssl_certificate: https 证书
 - ssl_certificate_key: https 私钥
 
启动服务
cmd 进入nginx 目录 运行命令
- 启动服务
 
start nginx

- 刷新服务
 
nginx -s reload
- 停止服务
 
nginx -s stop
- 检查配置配件是否存在语法错误
 
nginx -t










