Linux 配置 Hexo + Git 环境
linux 源码包安装
- wget http://xxxx 获取源码包
- 解压,tar zxvf xxx.tar.gz
- ./configure –prefix=/usr/local/xxx 指定安装路径
- make 编译
- make install 安装
- 配置环境变量
1
vim /etc/profile
然后在文件的最后一行,添加下面的内容,然后保存退出。
1 | export PATH=$PATH:/usr/local/git/bin |
使用 source 命令生效。
1 | source /etc/profile |
环境依赖
- 安装 git、nodejs 环境,安装 pyenv,安装 python 环境,安装 nginx
- npm 安装 hexo 脚手架,把 hexo 博客放到服务器上,启动 hexo server -p 1011 分配端口号
- 配置 nginx,路径配置为 hexo 的 public 静态文件目录。配置域名等信息。
- 可以通过域名访问博客,通过ip+端口访问后台管理的博客页面 hexo-admin
git 安装
git 依赖库
1 | yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel |
git 源码包地址
https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.19.2.tar.gz
nodejs 安装
先安装 git,yum 安装 nodejs,再安装 nvm
安装 nvm
nvm 是 node 包管理工具,使用 nvm 我们可以访问 node 的所有可用版本,还可以使用 nvm 安装多个版本的 node
1 | (1、添加NodeSource官方存储库,选择添加资源库版本,执行以下任意一个命令 |
要安装 nvm,需要安装构建源包所需的工具,CentOS 上安装,用这些命令来安装构建工具:
1
2
3sudo yum update
yum -y install nodejs
sudo yum groupinstall 'Development Tools'现在当安装构建工具时,需要从 nvm 的官方 github 存储库获取并执行安装脚本
1
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash
这将在您的机器上安装 nvm。关闭或者重新打开您的终端,运行以下命令检查 nvm 是否已成功安装,这个命令简单的终输出 nvm
1
command -v nvm
要找出可以通过 nvm 安装的 Node.js 的可用版本,运行以下命令,这个命令的输出将提供一个庞大的 node 版本列表
1
nvm ls-remote
nginx 安装
nginx 源码包地址
https://nginx.org/download/nginx-1.15.7.tar.gz
下载后解压,进入目录,
执行
1 | ./configure --prefix=/usr/local/webserver/nginx |
如果报错,根据提示解决
1 | make |
nginx配置
创建 Nginx 运行使用的用户 www:
1 | /usr/sbin/groupadd www |
配置/conf/nginx.conf
1 | user www www; |
检查配置是否正确
1 | /usr/local/webserver/nginx/sbin/nginx -t |
启动nginx
1 | /usr/local/webserver/nginx/sbin/nginx |
查看启动的nginx
1 | ps -ef|grep nginx |
nginx其他命令
1 | /usr/local/webserver/nginx/sbin/nginx -s reload # 重新载入配置文件 |
后台运行hexo server
安装pm2
1 | npm install -g pm2 |
在博客根目录下创建一个文件 run.js
1 | //run.js |
运行脚本
1 | pm2 start run.js |
nginx 重写配置url
进入nginx源码包目录,重新执行:
1 | ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module |
完成之后 make
备份之前的nginx 包
1 | cp /usr/local/webserver/nginx/sbin/nginx /usr/local/webserver/nginx/sbin/nginx.bak |
将刚刚编译好的nginx覆盖掉原有的nginx(nginx服务处于停止状态)
1 | cp ./objs/nginx /usr/local/webserver/nginx/sbin/ |
http 强制跳转 https (nginx 再配置一个 server)
1 | server { |
本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 吕钒的后花园!