hexo、nginx服务器配置
###安装hexo
#预备工作
sudo apt update
sudo apt install nodejs npm git
#安装 Hexo
sudo npm install -g hexo-cli
#初始化博客(your-blog-name替换为博客名)
hexo init your-blog-name
cd your-blog-name
npm install
#生成静态文件:
hexo generate
#启动hexo服务器,比如进入your-blog-name主目录
hexo server
###安装nginx
sudo apt install nginx
#通过安全组已经命令行开放nginx端口
sudo ufw allow ‘Nginx HTTP’
sudo ufw allow ‘Nginx HTTPS’
###配置 Nginx
#在Hexo项目目录(如上述your-blog-name)中,运行hexo g命令来生成静态文件,这些文件放在public文件夹
hexo g
###hexo服务通过nginx实现
#方法一,将hexo博客public文件夹中的内容复制到Web服务器的根目录中,默认为/var/www/html
cp /home/xxx/your-blog-name/public/* /var/www/html/
#方法二,将hexo博客生成的index.html文件的目录设置为网页根目录
#进入博客的source/_posts目录是默认的文章存放目录,但不能直接导入,必须转换成静态网页
cd /home/xxx/your-blog-name/source/_posts
#新建XX.md的markdown文件,并编辑内容保存
touch XX.md
micro XX.md
#生成静态文件,先进入博客目录
cd cd /home/xxx/your-blog-name
hexo g
#静态网页将保存在/home/xxx/your-blog-name/public文件夹
#nginx修改网页根目录配置,修改/etc/nginx/sites-available/default,打开该文件删除所有内容,根据最下面的server注释模块进行编辑
1 | |
#更改文件夹权限否则不能访问,根据/etc/nginx/nginx.conf文件的第一行显示www-data为用户,为该用户赋予权限
sudo chown -R www-data:www-data /home/xxx/your-blog-name/public #将所有者更改为 www-data
sudo chmod -R 755 /home/xxx/your-blog-name/public #设置读取和执行权限
#必须注意如果新的根目录位于/home/ubuntu用户文件夹下,如果上述权限不行还必须把这个文件夹权限赋予www-data,为了方便把整个权限放开,比如
sudo chown -R www-data:www-data /home
sudo chmod -R 755 /home
#如果还有问题,检查/etc/nginx目录下面配置文件的访问权限,并按照以上方法操作
#检查文件配置
sudo nginx -t
#重新加载 Nginx
sudo systemctl reload nginx
#如果还出现错误查看日志
cd /var/log/nginx/
#方法三,使用端口代理,将nginx的80端口配置代理Hexo的4000端口
micro /etc/nginx/sites-available/default
#清除文件原有内容,更改文件内容如下
1 | |
#要特别注意,采用方法三必须在博客主目录运行hexo server,nginx才能代理成功