Debian13已经发布 php8.5最新发布 官方支持都还欠缺 使用sury的ppa安装
# 安装必要工具
sudo apt update
sudo apt install -y curl gnupg2 ca-certificates lsb-release apt-transport-https
# 添加 GPG 密钥
sudo curl -fsSL https://packages.sury.org/php/apt.gpg | sudo gpg --dearmor -o /usr/share/keyrings/php.gpg
# 添加 PHP 源
echo "deb [signed-by=/usr/share/keyrings/php.gpg] https://packages.sury.org/php/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/php.list
# 更新源
sudo apt update
安装 PHP 8.5 及扩展
# 安装 PHP 8.5 核心及 FPM
sudo apt install -y php8.5 php8.5-fpm
# 安装 Lsky Pro 所需的常用扩展
sudo apt install -y \
php8.5-cli \
php8.5-common \
php8.5-curl \
php8.5-gd \
php8.5-mbstring \
php8.5-mysql \
php8.5-xml \
php8.5-zip \
php8.5-bcmath \
php8.5-imagick \
php8.5-redis
sudo apt install -y php8.5-fpm php8.5-cli php8.5-common \
php8.5-curl php8.5-mbstring php8.5-xml php8.5-zip \
php8.5-imagick php8.5-bcmath php8.5-gd \
php8.5-intl php8.5-mysql php8.5-readline
验证安装
# 检查 PHP 版本
php8.5 -v
# 检查已安装扩展
php8.5 -m
# 检查 PHP-FPM 状态
sudo systemctl status php8.5-fpm
配置 PHP-FPM
# 编辑 www.conf(根据你的 Web 服务器调整用户/组)
sudo nano /etc/php/8.5/fpm/pool.d/www.conf
# 关键配置项示例:
; user = www-data
; group = www-data
; listen = /run/php/php8.5-fpm.sock
; listen.owner = www-data
; listen.group = www-data
; pm.max_children = 50
; pm.start_servers = 5
; pm.min_spare_servers = 5
; pm.max_spare_servers = 35
调整 PHP 配置(Lsky Pro 优化)
sudo nano /etc/php/8.5/fpm/php.ini
; 文件上传相关(Lsky 图床必需)
upload_max_filesize = 50M
post_max_size = 50M
max_file_uploads = 20
memory_limit = 256M
max_execution_time = 300
; 时区设置
date.timezone = Asia/Shanghai
; 错误显示(生产环境建议关闭)
display_errors = Off
log_errors = On
; OPcache 优化
opcache.enable = 1
opcache.memory_consumption = 128
opcache.max_accelerated_files = 10000
重启服务
sudo systemctl restart php8.5-fpm
sudo systemctl enable php8.5-fpm
Nginx + PHP-FPM,确保 Nginx 配置正确
# /etc/nginx/sites-available/lsky
server {
listen 80;
server_name your-domain.com;
root /var/www/lsky/public;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.5-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# 图片缓存
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 30d;
add_header Cache-Control "public, immutable";
}
}
如果文件没有 先创建
sudo mkdir -p /etc/nginx/snippets
sudo tee /etc/nginx/snippets/fastcgi-php.conf << 'EOF'
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_buffering on;
fastcgi_buffer_size 4k;
fastcgi_buffers 8 4k;
fastcgi_busy_buffers_size 8k;
fastcgi_temp_file_write_size 8k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
EOF
配置优化(Lsky Pro 推荐)
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
添加/修改以下配置:
[mysqld]
# 基础设置
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
default_storage_engine = InnoDB
# 性能优化(根据服务器内存调整)
innodb_buffer_pool_size = 512M # 建议设为内存的 50-70%
innodb_log_file_size = 128M
innodb_flush_log_at_trx_commit = 2
# 连接设置
max_connections = 200
wait_timeout = 600
interactive_timeout = 600
# 日志(调试用,生产环境可关闭)
# slow_query_log = 1
# slow_query_log_file = /var/log/mysql/slow.log
# long_query_time = 2
[mysql]
default-character-set = utf8mb4
[client]
default-character-set = utf8mb4
重启生效:
sudo systemctl restart mariadb
与 PHP 8.5 联动
确保 PHP 已安装 MySQL 扩展:
# 如果之前没装,现在补上
sudo apt install php8.5-mysql
# 重启 PHP-FPM
sudo systemctl restart php8.5-fpm
验证 PHP 能否连接 MariaDB:
php8.5 -m | grep -i mysql
# 应显示:mysqli, mysqlnd, pdo_mysql
常用管理命令
| 操作 | 命令 |
| ----- | ----------------------------------------------------- |
| 登录 | `sudo mariadb -u root -p` |
| 查看状态 | `sudo systemctl status mariadb` |
| 重启 | `sudo systemctl restart mariadb` |
| 备份数据库 | `sudo mariadb-dump -u root -p lsky > lsky_backup.sql` |
| 恢复数据库 | `sudo mariadb -u root -p lsky < lsky_backup.sql` |
| 查看用户 | `SELECT user, host FROM mysql.user;` |
Lsky Pro 数据库配置示例
安装 Lsky Pro 时,.env 文件配置:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=lsky
DB_USERNAME=lsky_user
DB_PASSWORD=你的强密码
Enjoy~~