美文网首页Java 杂谈
nginx部署hexo的方法

nginx部署hexo的方法

作者: 韧卓 | 来源:发表于2018-04-27 09:21 被阅读293次

前言

部署hexo静态博客到生产环境通常有两种方法:

  1. nohup命令执行hexo s:由于hexo s是框架提供的调试方法,不是部署方式,因此在生产环境会存在性能问题,不建议使用;
  2. nginx部署静态资源:将本地调试好的hexo打包生成的public目录部署到nginx上。nginx性能好,访问速度快。

Hexo

  • 配置

    • 处理二级目录:当生产环境中,静态博客部署在二级目录下(如:“http://域名(ip)/blog”这种情况),需要修改hexo工程下的_config.yml配置文件,否则打包生成的css、js文件目录会缺失(默认在根目录),导致无法加载样式。一般修改rooturl,增加二级目录
        # URL
        ## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
        url: http://yoursite.com/blog
        root: /blog
        permalink: :year/:month/:day/:title/
        permalink_defaults:
    
    • 部署在根目录无需处理
  • 打包:通常在调试环境无需打包,修改后使用hexo s,即可生效,可以直接在本地查看效果。但是,以静态资源的方式部署需要打包生成静态资源,命令为:hexo generate

nginx

  • 配置静态资源路由

    • 示例:hexo打包完成之后,以静态资源的方式部署到nginx,增加一个location模块。路由的细节有两种:rootalias,主要区别就是怎么解析location后面的uri。以下代码以root为例:
    location /blog {
        root html;
        index index.html;
    }
    
    • root规则
      以上的示例,说明访问的实际路由为:html/blog/index.html

    • alias规则
      同样的路径,alias需要按下面这么写,location后面的blog不会接到alias后面,而且alias指定的目录名后面一定要加上"/"。(^~表示uri以某个常规字符串开头,用于匹配url路径(而且不对url做编码处理,例如请求/static/20%/aa,可以被规则^~ /static/ /aa 匹配到(注意是空格))。下面是alias示例:

    location ^~ /blog/ {
        alias html/blog/;
        index index.html;
    }
    
  • nginx常用命令

    • 启动:nginx
    • 停止:nginx -s stop
    • 重启:nginx -s restart
    • 指定配置文件启动:nginx -c 路径

参考:

  1. nginx之location(root/alias)

相关文章

  • nginx 403错误

    在部署hexo博客时,由于使用hexo server启动经常停止,所以便想将hexo静态部署到nginx上。但在部...

  • nginx部署hexo的方法

    前言 部署hexo静态博客到生产环境通常有两种方法: nohup命令执行hexo s:由于hexo s是框架提供的...

  • 使用Nginx部署Hexo站点

    在公司内网环境中,搭建一个静态站点,用于保存一些相关知识文档,并通过页面的形式展现出来。静态站点生成器这里我选择的...

  • 从Octopress转到Hexo

    部署Hexo 在部署Hexo的时候,需要配置hexo/_config.yml文件,这个文件中有一个deploy的配...

  • 使用Hexo和github打造个人博客

    准备工作 了解hexo安装和github项目部署 hexo部署到github 这时如果直接hexo d 会报找不...

  • 蓝猴子

    Hexo 部署命令 hexo deploy 执行报错 Hexo 发布内容到 github,执行 hexo depl...

  • 210318:使用nginx部署多个前端项目-网页url太长怎么

    一. 使用nginx部署多个前端项目 个人总结了3种方法来实现在一台服务器上使用nginx部署多个前端项目的方法。...

  • Hexo自动构建-基于Github和TravisCI

    基于Github和TravisCI 都是墙外工具,可能速度偏慢;在部署过程会有不同的方法:使用hexo d进行部署...

  • Docker + Nginx 部署 Vue 项目

    背景 我们在部署 Vue 项目时,可以通过 webpack 打包 + nginx 的部署方法,如果加上 Docke...

  • Hexo加速访问

    前言 《Hexo环境搭建2018年5月版》一文中,重新记录了hexo的安装部署方法,比较详细完整。但是,在访问的时...

网友评论

    本文标题:nginx部署hexo的方法

    本文链接:https://www.haomeiwen.com/subject/mxtblftx.html