申请域名以及更换DNS服务器

我们转到阿里云域名注册按照要求申请一个自己喜欢的域名即可。

建议不要使用中文域名!

这边笔者个人比较推荐CloudFlare管理域名,当然默认用阿里云也是可以的,看个人喜好啦。

转到CloudFlare注册一个账户并且添加我们刚刚申请好的域名,并且按照要求在阿里云域名控制台更改DNS服务器为CloudFlare提醒你要改的

改完静默等待他生效即可,此时我们可以直接开启下一步。

服务器购买、系统升级、宝塔面板的安装

购买与升级

转到购买界面,按需求购买,这边建议配置为2C2G,镜像选择系统镜像,然后选择Debian11.3,服务器开机之后记下公网ip地址,并且在控制台设置root账户密码,以及防火墙放行443,80,3306,?你想要的面板端口,8888。

完成后使用ssh工具远程连接到服务器。

完全更新你的系统软件包

apt update
apt upgrade -y
apt dist-upgrade -y
apt autoclean
apt autoremove -y

更新apt源,替换bullseyebookworm,对于 Debian 12 以后的版本,所有 Debian 可以分发的打包的非自由固件二进制文件non-free,比如某些驱动,都被转移到Debian Archive中的一个新组件,称为非自由固件non-free-firmware。如果您从旧版的 Debian 升级,并且需要这些固件二进制文件,所以你应该同时更新您系统上的/etc/apt/sources.list,以使用这个新组件:

sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list
sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list.d/*.list
sed -i 's/non-free/non-free non-free-firmware/g' /etc/apt/sources.list

执行更新

apt update
apt upgrade -y
apt dist-upgrade -y
更新过程中会有很多选项,除了让你更新ssh配置文件的选项选择No:Keep the local version currently installed外,其余全部选择Yes。

重载服务配置

systemctl daemon-reload

然后删除不必要的软件和依赖

apt autoclean
apt autoremove -y 

完成后使用reboot重启并且使用cat /etc/debian_version检测当前系统版本,不出意外的话输出12.6代表更新成功。

面板安装

输入官方面板安装命令

if [ -f /usr/bin/curl ];then curl -sSO https://download.bt.cn/install/install_panel.sh;else wget -O install_panel.sh https://download.bt.cn/install/install_panel.sh;fi;bash install_panel.sh ed8484bec

按照输出的要求操作即可,安装到最后请记一下输出的面板地址账号密码等信息

域名解析

转到CloudFlare的DNS记录,通常,针对个人博客,我们需要建立两个A解析记录。

A(Address)记录是用来指定主机名(或域名)对应的IP地址记录。用户可以将该域名下的网站服务器指向到自己的web server上,同时也可以设置域名的子域名。简单来讲,A记录就是指定域名对应的IP地址。如我们添加一条A记录将www的主机指向IP192.168.1.1,那么当你访问www主机时就会解析到192.168.1.1这个IP上。

首先我们需要添加一个根解析(你的根域名abc.com),主机地址即是你的ip地址,如图所示:

然后我们添加一个www解析(即www.abc.com),如图所示:

做完之后,当我们访问域名的时候,DNS服务器就会将域名映射到IP地址,而我们的网站就运行在服务器的http,即80端口;如果我们的网站添加了SSL证书,那么就会运行在https:443端口上。所以假如我们访问一个服务器的ipv4地址,那么实际上默认访问的80端口,当域名前缀改成了https,则默认访问443端口。443端口的传输层安全是TLS加密即HTTP Over TlS,目前最新的协议是TLS1.3。

环境搭建与WordPress部署。

环境

我们访问前面记录的宝塔面板地址,进入之后首先转到面板设置,进行一些自定义设置,这里一定要做的设置是:面板端口更改(前面防火墙让你放行的想要的端口就起到了作用),面板账号,面板密码,面板安全入口,通过ssl访问面板。设置完注意记忆或者记录。

完成以上操作,用新链接登录面板,转到软件商店安装Nginx1.26,PHP8.3,MySQL8.0.36,PHPmyAdmin

这里我们会遇到的问题是,当我们安装MySQL8.0.35时,会提示至少需要3700mb内存才能安装。

首先,我们要打开Linux工具箱,将系统网络DNS地址设置为8.8.8.88.8.8.4,将系统时间校准为Asia/ShangHai,这两步都是优化为主的题外话,重点是设置虚拟内存为4096MB。

即使如此,你会发现MySQL仍然装不上,那是因为面板的高版本对MySQL8.0以上做了内存限制,但是8.0以上版本确实是可以在2GB内存的机子上运行的,但是2GB内存确实是太少,虚拟内存是为了保证稳定性。

为了顺利安装,我们只需要用#注释掉面板中的限制代码即可,注释掉/www/server/panel/class/panelplugin.py:914~916,如果你在914~916行招到的代码和我不一样,那就请用Crtl+F搜索关键字至少需要,按图片注释即可。

全部安装完成之后,我们调整一下php,nginx和mysql的性能。按服务器内存调整即可。

特别的,对于PHP我们需要安装WordPress官方要求的扩展

网站部署

转到左边的网站,新建一个网站,域名即是前面解析的两个域名,同时创建一个数据库。一定一定要保存好账号密码

设置ssl,我们直接使用面板申请,转到ssl里的Let's Encrypt,申请部署后开启强制https即可。

关于Lets Encrypt证书,默认申请的RSA加你的证书,但还有一个隐藏的证书,由E1(现E5)颁发的ECDSA加密的证书。申请步骤稍微复杂一些,可以看我网站内的文章《剪切板》

转到网站>高级设置>TLS,勾选1.2和1.3,关闭1.1和1.0。

在WordPress下载页面下载最新版,将压缩包上传到你网站的根目录,注意是你前面创建的网站的根目录,不是服务器的根目录。

删除根目录下原本的index.html和404.html,然后解压缩。

转到网站设置,伪静态内输入如下:

location /
{
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

转到网站主页,按要求链接好数据库,设置好管理员账密,WordPress的部署就完全大功告成啦!

接下来,就是如何配置,美化,个性化博客了,可以查阅相关资料,可以使用开源的主题然后在其基础上自定义。总之,这些都是自己做的事情了,复杂繁琐。

后续网站seo优化,网站性能优化都是值得自己慢慢探索的东西。