我使用服务器版本是Ubuntu22.04,其他服务器版本需要自行研究
1、安装nodejs 18 和npm
1.1、首先更新源
sudo apt-get update && apt-get upgrade -y
1.2、安装curl,一般来说系统都带有
sudo apt-get install curl
1.3、sh安装nodejs源
curl-fsSL https://deb.nodesource.com/setup_18.x | sudo-Ebash-
1.4、安装nodejs
sudo apt-get install -y nodejs
1.5、查看node版本,确认安装完毕
node-v
2、安装hexo
2.1 、在var目录下新建hexo文件夹,如果不喜欢,可以找自己喜欢的文件夹
mkdir /var/hexo cd /var/hexo
2.2、npm安装hexo
npm install -g hexo-cli
2.3、将 Hexo 所在的目录下的 node_modules 添加到环境变量之中
echo'PATH="$PATH:./node_modules/.bin"' >> ~/.profile
2.4、安装nginx并创建hexo文件夹(可以换成自己喜欢的文件夹)
sudo apt-get install nginx && mkdir /var/www/hexo
2.5、安装hexo到/var/www/hexo
hexo init /var/www/hexo cd /var/www/hexo
2.6、生成静态文件
hexo g && hexo d
2.7、配置nginx
vi /etc/nginx/sites-available/default
server { listen80 default_server; #监听的端口server_tokens off; #隐藏版本号#如果要强制使用https,需要把root,index注释,重定向的注释去掉root /var/www/hexo/public;#项目路径 hexo g 生成的静态文件indexindex.html index.htm index.nginx-debian.html;#默认主页名称server_name example.com;#域名#return 301 https://$server_name/$require_uri; #重定向到ssllocation / { try_files$uri $uri/ =404; } }
server { listen443 ssl; server_tokens off; #隐藏版本号server_name example.com; #域名ssl_certificateserver.crt; #pem/crt证书路径ssl_certificate_keyserver.key; #key文件路径ssl_session_timeout 5m; #session超时时间ssl_protocolsTLSv1 TLSv1.1 TLSv1.2; ssl_ciphersECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384; ssl_prefer_server_ciphers on; location / { root /var/www/hexo/public; #项目地址try_files$uri $uri/ =404; } }
2.9、hexo _config.yml配置
https://hexo.io/zh-cn/docs/configuration
参考:
1.nodejs18来源:How to install Node.js 18 on Ubuntu 20.04 LTS
2.hexo安装文档:文档 | Hexo