貌似这个Blog上的 第一篇文章 就讲了怎么配置Caddy,但是,当时我用的别人的docker镜像,which,集成了nginx, php, 以及typecho,然后我当时直接Caddy反代端口来搭建。
现在入手了阿里云这台服务器,512M内存实在是有点拘谨,那为了抛弃nginx以及docker带来的额外内存占用我就准备手搓Typecho的环境。
首先安装世界上最好的编程语言PHP
1. 添加Sury PPA存储库
首先,添加包含最新PHP包的PPA。为此,需要安装一些依赖包。
sudo apt update
sudo apt install lsb-release apt-transport-https ca-certificates software-properties-common -y
安装工具后,导入Sury库的GPG密钥。Sury包含了几乎一切的PHP版本。Typecho要求PHP版本>7.4,所以我们安装8.2
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
然后将存储库添加到你的源列表中。
sudo sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
更新包列表以验证其功能。
sudo apt update
2. 安装PHP 8.2包
安装PHP 8.2及其常用扩展。
sudo apt install php8.2 php8.2-cli php8.2-fpm php8.2-mysql php8.2-curl php8.2-gd php8.2-mbstring php8.2-xml php8.2-zip php8.2-opcache -y
安装Caddy v2
网上找了一圈都是用Caddy v1 + 特殊的伪静态配置来实现了。但是Caddy v2一个非常重要的升级就是不需要额外的伪静态配置,显然v2是更方便的。我们不希望削足适履。
Caddy官方提供了脚本,我当然最推荐这个:
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
当然,如果你需要额外的插件(比如dns-providers之类的),你自然可以使用xcaddy来自己编译一个,但这不是这篇博文的重点,于是略去。
配置Caddyfile
还是那句话,我不希望削足适履,所以我更希望你学习使用Caddyfile,而非传统的JSON配置文件。
以下配置文件经试验,粘贴即可使用:
YOUR WEBSITE {
encode gzip
log
tls YOUR EMAIL
header Strict-Transport-Security max-age=31536000
root * /var/www/YOUR WEBSITE
php_fastcgi unix//run/php/php8.2-fpm.sock
file_server
}
此时你是不是真切地对Caddy v2的便捷性有了认识?你不需要配置php-fpm相关的内容,你不需要配置伪静态……可以说是开箱即用的体验!
最后一步!添加你的Typecho站点文件
使用 wget
下载 Typecho 的最新版本:
wget https://github.com/typecho/typecho/releases/latest/download/typecho.zip
使用 unzip
命令将 Typecho 解压到 /var/www
目录:
确保
/var/www
目录存在:sudo mkdir -p /var/www
然后创建你的网页目录,比如我的网页是20051110.xyz,那么你就创建
sudo mkdir /var/www/20051110.xyz
解压
typecho.zip
到/var/www/你的网站目录
:sudo cd /var/www/你的网站目录 sudo unzip /root/typecho.zip #记得替换成你Typecho实际下载的位置
最后一步!修改文件权限:将 /var/www
目录及其子目录的所有权更改为 www-data
用户和用户组(这是 Web 服务器通常使用的用户):
sudo chown -R www-data:www-data /var/www
你可以检查一下你的目录结构是否如下图所示:
/var/www/你的网站地址
├── admin/
├── install/
├── usr/
├── var/
├── index.php
├── install.php
└── ...
如果正确,那么就Caddy,启动!
caddy run --config=Caddyfile #这里因为我跟Caddyfile处于同一个目录中,所以就这样写
caddy会自动帮你申请证书,申请完成后,即可访问网站,进行Typecho的安装(不用怕,都是图形界面,点点鼠标即可)
最后如果你喜欢我的Typecho主题,欢迎来这个主题的Github仓库看看!这个主题我基于原有的Fantasy
主题开发,几乎完全重写了css,支持了深色模式,还添加了一些功能(比如碎碎念页面,比如底部的一言,……)欢迎给我个Star!
我的仓库链接
感谢你读到这里!希望这篇文章对你有用!