★★★在 Debian 11/12 上安装 PHP 8.2 + Caddy【MySQL 8.0或MariaDB数据库】
现在已集成到一键工具箱中了,进入后选11,支持 Debian11、12 和 UBT 等系统
wget https://raw.githubusercontent.com/wszx123/gongjuxiang/refs/heads/main/toolbox.sh -O toolbox.sh && chmod +x toolbox.sh && ./toolbox.sh特别备注:
1、Debian 12 (PHP 8.2) 上,如需要修改 php.ini 配置文件【不修改也可以,修改后可上传更大的文件等】,并重启 PHP 服务
找到: /etc/php/8.2/fpm/php.in
修改为
upload_max_filesize = 20M 或更大 100M
post_max_size = 80M 或更大 200M
可选:修改执行时间和内存限制(上传大文件推荐加上)
max_execution_time = 300
max_input_time = 600
memory_limit = 256M 或更大
2、安装 MySQL 8.0 和扩展(推荐)后
默认配置是:
用 户 名: wszx123_user
密 码: password@123@DDD
数据库名: wszx123_db
Caddy 是一个现代、高性能、自动 HTTPS 的 Web 服务器,比 Nginx 更简单,特别适合快速部署 PHP 网站。
这是一个一步到位的自动化建站脚本,包括:
安装 Caddy(来自官方仓库)
安装 PHP-FPM 及扩展
创建网站目录
配置 Caddy 支持 PHP
可自动启用 HTTPS(如果绑定域名)
一、在 Debian 11 上用 Caddy + PHP 快速部署动态 PHP 或静态html网站【6个步骤】
1、更新系统
sudo apt update && sudo apt upgrade -y2、安装 PHP 和常用扩展
sudo apt install -y php php-fpm php-mysql php-cli php-curl php-gd php-mbstring php-xml php-zip unzip3、安装 Caddy
a、必要的软件包1
sudo apt install -y debian-keyring debian-archive-keyring curl必要的软件包2
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-httpsb、Caddy的安全密钥
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpgc、下载 Caddy密钥文件
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.listd、更新软件包列表
sudo apt updatee、升级或安装Caddy2
sudo apt install -y caddy4、创建网站目录,并上传静态html或动态php文件【网站文件在 home/html/web/】
网站1
sudo mkdir -p /home/html/web/web1
sudo chown -R www-data:www-data /home/html/web/web1
sudo chmod -R 755 /home/html/web/web1
网站2
sudo mkdir -p /home/html/web/web2
sudo chown -R www-data:www-data /home/html/web/web2
sudo chmod -R 755 /home/html/web/web2
网站3
sudo mkdir -p /home/html/web/web3
sudo chown -R www-data:www-data /home/html/web/web3
sudo chmod -R 755 /home/html/web/web3
网站4
sudo mkdir -p /home/html/web/web4
sudo chown -R www-data:www-data /home/html/web/web4
sudo chmod -R 755 /home/html/web/web4
网站5
sudo mkdir -p /home/html/web/web5
sudo chown -R www-data:www-data /home/html/web/web5
sudo chmod -R 755 /home/html/web/web5
网站6
sudo mkdir -p /home/html/web/web6
sudo chown -R www-data:www-data /home/html/web/web6
sudo chmod -R 755 /home/html/web/web6
可以类似的创建更多网站
5、配置 Caddy 支持 PHP【以两个网站为例,多个网站类似配置,安装时不开cf小黃云。安装完后,不使用代理时不打开小黄云,使用 CF 代理 时打开小黄云, SSL/TLS证书必须设置为完全或完全(严格) ,否则网站打不开】
example1.com {
root * /home/html/web/web1 #安装路径,备注什么网站
php_fastcgi unix//run/php/php-fpm.sock
file_server
}
example2.com {
root * /home/html/web/web2 #安装路径,备注什么网站
php_fastcgi unix//run/php/php-fpm.sock
file_server
}
http://[v6 ip]:端口 {
root * /home/html/web/web3 #使用v6的 IP+端口 访问,v6 的 ip 必须放在[]中
php_fastcgi unix//run/php/php-fpm.sock
file_server
}
example3.com {
reverse_proxy 127.0.0.1:8880 #反代,这里输入你想反代的服务器IP和端口
encode gzip
}
example4.com {
redir https://naiyous.com{uri} #重定向,这里输入你想设置的重定向
}
6、启动并启用 php*-fpm和Caddy,并设置开机自启【后面7、8、9一般不用】,大功告成。
sudo systemctl enable php*-fpm
sudo systemctl restart php*-fpm
sudo systemctl enable caddy
sudo systemctl restart caddy7、开启防火墙 ipv4或IPv6 端口(如果启用 UFW,例如要开启8080端口)
sudo ufw allow 8080/tcp
sudo ufw reload8、开机自启
systemctl enable caddy重启Caddy2
systemctl restart caddy9、停止Caddy2
systemctl stop caddy二、【不用数据库可不安装,比如 WordPress、Typecho要用到】Debian 11 默认的软件源中没有 mysql-server 包,或者没有启用适当的源。Debian 通常推荐使用 MariaDB 替代 MySQL
A、使用 MariaDB(兼容 MySQL)
1、 升级等
sudo apt update
sudo apt install -y mariadb-server
sudo systemctl enable mariadb
sudo systemctl start mariadb设置 root 密码【一定要修改默认的rootpass123为强密码,至少18位英文、数字加字符】
sudo mysql -e "ALTER USER 'root'@'localhost' IDENTIFIED BY 'rootpass123'; FLUSH PRIVILEGES;"2、登录 MariaDB:
sudo mysql -u root -p
# 然后输入密码:rootpass1233、创建数据库:
CREATE DATABASE mydb DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;你也可以:
CREATE DATABASE mysite;4、给 root 用户授权(MariaDB 默认 root 用户已拥有所有权限)
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;5、示例配置(适用于 WordPress/phpMyAdmin 等)
配置项 值
数据库名 mydb
数据库用户名 root(或 myuser)
数据库密码 rootpass123(或 mypassword)
数据库主机 localhost
6、如何在安装程序中填写(例如 WordPress/phpMyAdmin),安装时根据提示进行
数据库主机:localhost
表前缀:wp_ (或保留默认)
数据库用户名: root
数据库名: mydb
数据库密码: rootpass123
B、Oracle 官方源安装了 MySQL Server 8.0 ,和上面的MariaDB(兼容 MySQL)一样
1、升级等
sudo apt update
sudo apt install -y wget lsb-release gnupg2、下载官方源配置包
# 下载官方源配置包
wget https://dev.mysql.com/get/mysql-apt-config_0.8.29-1_all.deb3、安装该配置包【安装过程中要设置的 root 密码,记好,后面用到】
# 安装该配置包
sudo dpkg -i mysql-apt-config_0.8.29-1_all.deb4、在弹出的菜单中,默认选中 MySQL 8.0,按回车确认
5、再更新软件源
# 再更新软件源
sudo apt update6、安装 MySQL Server
# 安装 MySQL Server
sudo apt install -y mysql-server7、登录 MySQL,然后输入你在安装时设置的 root 密码。
sudo mysql -u root -p8、创建数据库,mydb 是你的网站或程序要使用的数据库名,可以根据需要修改。
CREATE DATABASE mydb DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;9、创建独立的数据库用户并授权
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;myuser 是你新建的数据库用户名
mypassword 是你设置的密码
localhost 表示只允许本地连接数据库
10、(可选):查看创建情况
SHOW DATABASES;
SELECT user, host FROM mysql.user;
SHOW GRANTS FOR 'myuser'@'localhost';数据库名 mydb
数据库用户名 myuser
密码 mypassword
主机 localhost
11、退出命令,随便一个都行
exit; #退出quit; #退出一键部署脚本(保存为 setup_caddy_php.sh)
#!/bin/bash
set -e
green() { echo -e "\033[32m$1\033[0m"; }
green "▶ 更新系统..."
sudo apt update && sudo apt upgrade -y
green "▶ 安装 PHP 和常用扩展..."
sudo apt install -y php php-fpm php-mysql php-cli php-curl php-gd php-mbstring php-xml php-zip unzip
green "▶ 安装 Caddy..."
sudo apt install -y debian-keyring debian-archive-keyring curl
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 -y caddy
green "▶ 创建网站目录..."
sudo mkdir -p /var/www/html/mysite
sudo chown -R www-data:www-data /var/www/html/mysite
green "▶ 写入 PHP 测试页..."
cat <<EOF | sudo tee /var/www/html/mysite/index.php
<?php
phpinfo();
?>
EOF
green "▶ 配置 Caddy 支持 PHP..."
cat <<EOF | sudo tee /etc/caddy/Caddyfile
:80 {
root * /var/www/html/mysite
php_fastcgi unix//run/php/php-fpm.sock
file_server
}
EOF
green "▶ 启动并启用 Caddy..."
sudo systemctl enable php*-fpm
sudo systemctl restart php*-fpm
sudo systemctl restart caddy
green "✅ 成功部署!请访问 http://你的-VPS-IP 查看 PHP 测试页。"二、使用方法
步骤 1:上传并运行脚本
nano setup_caddy_php.sh
# 粘贴脚本内容
chmod +x setup_caddy_php.sh
./setup_caddy_php.sh或一键命令
bash <(curl -fsSL https://raw.githubusercontent.com/wszx123/gongjuxiang/refs/heads/main/setup_caddy_php.sh)或
bash <(wget -qO- https://raw.githubusercontent.com/wszx123/gongjuxiang/refs/heads/main/setup_caddy_php.sh)三、使用域名 + 自动 HTTPS(可选)
如果你有域名(如 example.com)指向 VPS:
编辑 /etc/caddy/Caddyfile 为:
example.com {
root * /var/www/html/mysite
php_fastcgi unix//run/php/php-fpm.sock
file_server
}重启caddy
sudo systemctl reload caddyCaddy 会自动申请并配置 Let's Encrypt 证书(HTTPS)。
四、总结
| 组件 | 说明 |
|---|---|
| Caddy | 替代 Nginx,自动 HTTPS,配置更简单 |
| PHP-FPM | 处理 PHP 动态请求 |
| 运行目录 | /var/www/html/mysite/ |
| 配置文件 | /etc/caddy/Caddyfile |
做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
新盘 上车集合 留下 我要发发 立马进裙
新盘首开 新盘首开 征召客户!!!coinsrore.com
2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
新车首发,新的一年,只带想赚米的人coinsrore.com
新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
新车上路,只带前10个人coinsrore.com
新盘首开 新盘首开 征召客户!!!coinsrore.com
新项目准备上线,寻找志同道合的合作伙伴coinsrore.com
新车即将上线 真正的项目,期待你的参与coinsrore.com
新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com
2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
新车首发,新的一年,只带想赚米的人coinsrore.com
新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
新车上路,只带前10个人coinsrore.com
新盘首开 新盘首开 征召客户!!!coinsrore.com
新项目准备上线,寻找志同道合的合作伙伴coinsrore.com
新车即将上线 真正的项目,期待你的参与coinsrore.com
新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com