周一. 12月 4th, 2023

购买服务器

两年前,阿里云向学生出售优惠价格的服务器,一个月只需9.5块,现在活动结束了,涨回原价一百多一个月。不过又新出了96r/年的轻量应用服务器(配置:1核2G内存,1000G月流量),反而更便宜了,月均8块钱。

更新Ubuntu源,安装Git

sudo apt update
sudo apt upgrade
sudo apt-get install git

配置Nginx

参考链接(转):https://blog.csdn.net/qq_19004627/article/details/80520622
安装Nginx

sudo apt install nginx

开启Nginx服务

sudo service nginx start

在任意设备上使用浏览器访问服务器ip地址,如果返回如下界面,则表明Nginx安装成功

nginx成功界面

安装MySQL

sudo apt install mysql-server

安装过程中需要设置两次密码

安装PHP

sudo apt install php php-fpm php7.0-mysql

安装后,修改Nginx默认配置文件使其支持PHP

sudo vim /etc/nginx/sites-available/default

将下面的代码取消注释

location ~ \.php$ { 
    include snippets/fastcgi-php.conf; 
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}

修改完配置,重启Nginx

sudo service nginx restart

在/usr/share/nginx/html/目录创建info.php文件,测试PHP

sudo vim /usr/share/nginx/html/info.php

输入以下代码

<?php phpinfo();?>

在任意浏览器访问服务器 http://服务器ip地址/info.php
如果显示以下内容,则表明配置成功

配置python和MySQL

修改系统默认python,服务器自带python2.7和python3.5,我习惯用3x版本,所以把默认版本改成了它

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150

这样,在终端输入python,默认进入的是3.5版本的python
但是python3.5版本不能使用mysql-python的包,因为这个包只适用于2x版本的,所以寻找了另一个相似的包——mysqlclient
先安装依赖

sudo apt-get install libmysql-dev
sudo apt-get install libmysqlclient-dev
sudo apt-get install python3-dev

再安装mysqlclient

sudo pip install mysqlclient

进入python3,输入import MySQLdb,检查模块是否可以正常导入,如果没有报错,说明安装成功

Hexo 部署到阿里云服务器

1.新建空的Git仓库

在服务器终端运行

mkdir tombraiderjf.git 
cd tombraiderjf.git
git init --bare

2.修改Hexo配置

在本地hexo配置_config.yml文件将第一行注释掉,改为root@服务器ip地址:服务器git路径

#repository: git@github.com:TombRaiderjf/TombRaiderjf.github.io.git
repository: root@ip_address:/home/admin/tombraiderjf.git

这样,每次进行hexo d 操作就是将本地生成的public文件夹push到服务器的Git仓库里了

3.自动部署

本地的deploy命令只是把静态文件提交到git仓库,既然有git hooks,那么我们可以在有文件提交上来时,再将文件拷贝到博客网站目录。进入到git仓库hooks目录,并创建钩子post-receive

cd /www/blog.git/hookstouch post-receivevim post-receive

然后编辑post-receive,输入以下脚本

#!/bin/bash -lGIT_REPO=/home/admin/tombraiderjf.git
TMP_GIT_CLONE=/home/admin/temp
PUBLIC_WWW=/home/admin/myblog
rm -rf ${TMP_GIT_CLONE}
git clone $GIT_REPO $TMP_GIT_CLONE
rm -rf ${PUBLIC_WWW}/*
cp -rf ${TMP_GIT_CLONE}/* ${PUBLIC_WWW}

按下Esc然后输入:wq保存并退出

其中/home/admin/tombraiderjf.git为仓库路径,/home/admin/myblog为你的博客网站路径,/home/admin/temp是临时目录,git会先将文件拉到临时目录,然后再将所有文件拷贝到博客网站目录/home/admin/myblog
更改目录权限:

chmod +x post-receivechmod 777 -R /www/blog

4.修改Nginx配置

sudo vim /etc/nginx/sites-availible/default

将server中的root路径修改为博客网站目录

root /home/admin/myblog

将server中的index名称改为自己的博客网页入口html,我的文件名是index.html,所以不需要修改

5.在本地测试

在本地终端输入 hexo g -d,并输入服务器密码,即可成功部署到服务器上

然后,在本地浏览器访问服务器ip地址,即可看到hexo博客内容,成功!

   
 摸鱼堡版权所有丨如未注明,均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明转自:http://moyubao.net/coder/498/

发表评论

邮箱地址不会被公开。