Hexo静态化Host尝试

目前这个博客一直无法使用forever或者pm2让hexo程序在后台永久运行,按官方教程创建个app.js文件然后用forever启动会自动退出,Google了好久也找不到解决方案,只好hexo进程死掉后手动启动,一点也不愉快。

而Linux通用的后台运行命令加&也一样每天会自动死进程。就是这个命令 hexo s &

一怒之下打算使用nginx host静态文件,大不了写完博客后运行 hexo g 生成一遍静态文件,这样至少不会每天都要重启服务器。

操作方法:

cd /etc/nginx/conf.d

进入文件夹后 使用cp default.conf default.conf.bk 将之前的配置文件备份。

然后vi default.conf 文件。 小技巧:非编辑模式下输入 :1,$d可以清空文件内容,然后粘贴如下代码:

  server {
  listen 80;
  server_name tuijiankan.com www.tuijiankan.com;
  if ($host != 'www.tuijiankan.com' ) {
        rewrite ^/(.*)$ http://www.tuijiankan.com/$1 permanent;
    }
  location / {
    root /home/hexo/public;
    index index.html index.htm;
  }
}

一直没做两个域名之间的301跳转,作为搞SEO的很惭愧,这次顺便加上让 tuijiankan.com 301到www.tuijiankan.com

root 后面填写hexo生成的静态文件路径public目录。

以上内容填写完成后,使用命令 service nginx restart 重启Nginx。

这样以后网站理论上会显得 “稳定” 些。


附:之前使用Nginx反向代理的设置:

server {
  listen 80;
  server_name tuijiankan.com www.tuijiankan.com;
  #access_log /var/log/nginx/log/host.access.log main;
  location / {
    proxy_pass              http://127.0.0.1:4000/;
    proxy_redirect          off;
    proxy_set_header        X-Real-IP       $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

注意: conf.d目录里备份的文件名千万别使用.conf结尾,这样可能会造成域名绑定上的冲突。