好久不见,博客也很久没有更新了呢,三次元中的各种事情和学业, 以及自己越来越严重的拖延症,所以博客不知不觉就停止更新了
最最最开始的时候,用的是不知名厂商的虚拟主机,而且还是免费的域名记得是:https://silk-age.lu.mk/,那回是刚刚建站,只是秉着“能跑就行”的原则,直接在10M宽带1H2G的公共共享资源虚拟主机上跑动了WordPress+Sakura主题,结果可想而知,因为小厂刚起步的不稳定性和主机的物理上的各种问题,导致访问慢、加载慢甚至浏览卡顿以及各种玄学问题,可能是资源占用令虚拟主机遭不住,在初之音等大佬的帮助下,后来就把博客搬迁了,用的是阿里云轻量服务器,新加坡的,用的是typecho程序+VOID主题,typecho我是十分喜欢的,比WordPress快太多了,最新也更新到了1.20版本,也开始初步支持了PHP8.0+,遗憾的是VOID主题却一直没有更新,不支持PHP8.0+,不过这个主题的设计非常棒,佩服A大
重构
其实在忙碌之余还是会打开自己的博客,看着自己这些杂乱的文章,马虎的文笔以及网站各种没有修复的bug和没有美化的地方,还有长期乱七八糟图片的管理,迁移和重构其实是在所难免的。在服务器配置不变的情况下,将新加坡换到了香港,并且我抛弃了原来所有的文章,这次是全新的一次搭建过程,当然,原博客我依旧保留了,你可以访问bh.silkage.xyz来看看原来的黑历史吧()
我会尽可能的写清楚迁移的过程
连接到服务器
对于服务器、DNS、域名的基本概念和原理这里不阐述了,服务器和域名大家还是找大厂购买会好些,我的服务器和域名都是阿里云的,Amazon、腾讯云、阿里云、Google、VULTR太多太多了
在完成域名的DNS解析和绑定后,那么开始连接到服务器吧,我这里用的是FinalShell,当然,你也可以用XShell或者什么别的不过某些别的工具被曝出窃取用户服务器信息的绯闻。你可以创建一个秘钥连接,也可以直接用密码连接,连接成功后开始部署环境
基础的环境部署
如果不是root用户切换到root用户,我是Ubuntu20.04LTS系统
sudo su root
更新一下基础环境
apt update && apt upgrade -y
安装基础的软件,如果有了就不用装了
apt install -y wget git unzip curl
安装宝塔面板
之前我是一直用纯LNMP环境,无奈本人不精,不少次都搞奔溃了,在经历114514次烧脑的问题后,无奈投去宝塔的怀抱了
在安装之前大家可以看看官方教程
我这里是Ubuntu系统,所以直接输入
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec
然后会提示确定安装,直接输入Y就可以开始安装了,大概两分钟后就可以用了
提示这个就是安装成功了,接下来进入后台
登入后台后会提示安装套件,直接选择最新版本的套件编译安装即可
大概把这些装完环境就配置好了
当然,你也可以安装LNMP这些
站点搭建
安装兰空图床(Lsky Pro)
首先我们要,添加域名到服务器
然后我们在/home/www
,目录新建一个文件夹,这个文件夹未来要放你的图床程序文件
为了防止会出现的玄学问题,我们给文件夹赋权
chown www:www -R /home/www/img
chmod 755 -R /home/www/img
登入你的phpmyadmin后台,记得用root账户登入,新建一个数据库,这是为图床准备的
由于兰空图床2.0对环境比较严格,我们需要安装PHP扩展打开指定的函数,详细参考官方文档
- PHP >= 8.0.2
- BCMath PHP 扩展
- Ctype PHP 扩展
- DOM PHP 拓展
- Fileinfo PHP 扩展
- JSON PHP 扩展
- Mbstring PHP 扩展
- OpenSSL PHP 扩展
- PDO PHP 扩展
- Tokenizer PHP 扩展
- XML PHP 扩展
- Imagick 拓展
- exec、shell_exec 函数
- readlink、symlink 函数
- putenv、getenv 函数
按照文档要求,在面板PHP8.1中设置
接着禁用函数exec、shell_exec、readlink、symlink、putenv、getenv
,PHP8.0开始默认这几个是关闭的但是在宝塔中需要手动删除
在网站
一栏点击新建站点
,域名填图床的域名,我的叫i.silkage.cn
,目录选择刚刚创建的图床目录,PHP版本务必选择8.1,数据库可以直接用root
然后在站点修改-伪静态
中输入
location / {
try_files $uri $uri/ /index.php?$query_string;
}
从兰空图床GitHub官网下载最新的版本,然后解压后上传到服务器你的图床目录并解压,然后回到网站设置,将运行目录改为/public
,即可打开你的网页,开始安装
安装过程我就不演示了,数据库账户root,数据库名填你之前创建的就行,装好后大概就是这样的
至此,图床安装完毕
安装typecho
前提工作
在typecho官网已经提到,安装typecho的几大前提是
PHP 7.2 以上
MySQL, PostgreSQL, SQLite 任意一种数据库支持,并在 PHP 中安装了相关扩展
CURL 扩展支持
mbstring 或 iconv 扩展支持
虽然看着很复杂,其实基本上这些前提都是已经配置安装好的,我们只需要在官网下载好最新的typecho程序,解压后会得到这样的一个文件夹
在宝塔面板新建一个站点,添加域名,数据库指向到root用户,指定网站目录,最后在phpMyAdmin,新建一个数据库,这是你的博客数据库
然后将typecho解压得到的文件全部拖到,你指定的网站目录中
接着打开域名,就会出现typecho引导程序
安装过程这里就不演示了和前面的兰空图床异曲同工,提示无法写入等信息,直接修改777权限即可,数据库账户root,数据库名填写你刚才新建的数据库名字
这样就是安装好了
简单美化
typecho基本设置
在typecho后台的设置—基本中,你可以设置你的站点名称,还有固定连接格式,把这些改成你的信息,除了网站首页显示,主要还可以被搜索引擎检索,被别人搜到
设置—永久链接中,可以自定义文章、独立页面、分类路径的设置还有地址重写,我使用的是自定义的比较简洁的链接设置/{slug}.html
,然后打开地址重写,这样可以让网址更加简洁,简短
若地址重写功能无法开启,我们需要添加typecho伪静态规则
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php$1 last;
}
如果要安装主题,在博客根目录usr/themes
中将主题文件解压上传即可,安装插件则要在/usr/plugins
中
评论默认头像无法加载
评论头像走的是Gravatar服务,这个服务在国内不太稳定,要想让头像顺利加载,需要替换原有链接,才能解决这个问题
在博客根目录中,打开/var/Typecho/Common.php
这个文件,然后Ctrl+F
搜索secure.gravatar.com
,大概在836行左右
$url = $isSecure ? 'https://secure.gravatar.com' : 'http://www.gravatar.com';
$url .= '/avatar/';
主要看到这两段代码,把第一行修改为极客族和V2EX的链接
$url = $isSecure ? 'https://sdn.geekzu.org/avatar/' : 'https://cdn.v2ex.com/gravatar/';
后记
那么...就从头开始吧...
封面:夢 邦乔彦-Pixiv