首页主机资讯Debian PHP开发环境怎么搭建

Debian PHP开发环境怎么搭建

时间2025-11-21 18:48:03发布访客分类主机资讯浏览288
导读:Debian PHP开发环境搭建指南 一 准备与版本选择 更新系统并确认可用 PHP 版本: 执行:sudo apt update 查看可用版本:apt-cache policy php 安装你需要的版本(示例为PHP 8.2;如用...

Debian PHP开发环境搭建指南

一 准备与版本选择

  • 更新系统并确认可用 PHP 版本:
    • 执行:sudo apt update
    • 查看可用版本:apt-cache policy php
  • 安装你需要的版本(示例为PHP 8.2;如用其他版本,将版本号替换为7.4/8.0/8.1/8.3等):
    • sudo apt install php8.2 php8.2-cli php8.2-fpm
  • 若默认仓库版本偏旧,可添加 Ondřej Surý 的 PHP 仓库后再安装指定版本(Debian 11/12 常用):
    • 安装工具:sudo apt install -y software-properties-common ca-certificates lsb-release apt-transport-https wget
    • 导入 GPG:wget -qO - https://packages.sury.org/php/apt.gpg | sudo gpg --dearmor | sudo tee /usr/share/keyrings/php-archive-keyring.gpg > /dev/null
    • 添加源:echo "deb [signed-by=/usr/share/keyrings/php-archive-keyring.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list > /dev/null
    • 更新并安装:sudo apt update & & sudo apt install php8.2 php8.2-cli php8.2-fpm
  • 常用扩展建议一并安装(按需增减):
    • sudo apt install php8.2-{ mysql,zip,gd,mbstring,curl,xml,bcmath,opcache,json}

二 选择 Web 服务器

  • 使用 Nginx + PHP-FPM(推荐)
    • 安装:sudo apt install nginx
    • 启动与开机自启:sudo systemctl start nginx & & sudo systemctl enable nginx
    • 配置站点(示例为默认站点):编辑 /etc/nginx/sites-available/default
      • 关键片段:
        server {
            
            listen 80 default_server;
            
            listen [::]:80 default_server;
            
            root /var/www/html;
            
            index index.php index.html;
        
        
            location / {
            
                try_files $uri $uri/ =404;
        
            }
        
        
            location ~ \.php$ {
            
                include snippets/fastcgi-php.conf;
            
                fastcgi_pass unix:/run/php/php8.2-fpm.sock;
            
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            
                include fastcgi_params;
        
            }
        
        
            location ~ /\.ht {
            
                deny all;
        
            }
        
        }
            
        
      • 检查并重载:sudo nginx -t & & sudo systemctl reload nginx
  • 使用 Apache + mod_php(快速上手)
    • 安装:sudo apt install apache2 libapache2-mod-php8.2
    • 启用 PHP 模块并重启:sudo a2enmod php8.2 & & sudo systemctl restart apache2
    • 说明:Debian 的 libapache2-mod-php 包会自动与安装的 PHP 版本匹配;如需多版本共存,请使用 PHP-FPM + Apache 的 proxy_fcgi 方式。

三 数据库与基础验证

  • 安装数据库(二选一或都装)
    • MariaDB:sudo apt install mariadb-server & & sudo systemctl enable --now mariadb
    • MySQL:sudo apt install mysql-server & & sudo systemctl enable --now mysql
    • 安全初始化:sudo mysql_secure_installation
  • 创建测试文件并验证
    • echo "< ?php phpinfo(); ?> " | sudo tee /var/www/html/info.php
    • 浏览器访问:http://服务器IP/info.php,应看到 PHP 信息页
  • 防火墙放行(如启用 UFW)
    • Nginx:sudo ufw allow 'Nginx Full'
    • Apache:sudo ufw allow 'Apache Full'
  • 常见问题速查
    • 502/504:多为 PHP-FPM 未启动或 socket 路径不一致,确认 php8.2-fpm 运行且 Nginx 中 fastcgi_pass 指向正确路径(如:/run/php/php8.2-fpm.sock
    • 权限问题:确保 /var/www/html 可被 www-data 读取(开发环境可临时 chmod -R 755 /var/www/html 并排查所有者)。

四 开发与调试配置

  • PHP 运行时配置(开发环境建议)
    • CLI 与 FPM 配置文件路径分别为:/etc/php/8.2/cli/php.ini/etc/php/8.2/fpm/php.ini
    • 常用开发配置:
      • display_errors = On
      • error_reporting = E_ALL
      • memory_limit = 256M(或更高)
      • upload_max_filesize = 100M
      • post_max_size = 100M
    • 修改后重启对应服务:sudo systemctl restart php8.2-fpm(FPM)或 sudo systemctl restart apache2(Apache)
  • Xdebug 3 配置(断点调试)
    • 安装:sudo apt install php8.2-xdebug
    • 编辑 FPM 的 php.ini,添加:
      zend_extension=xdebug.so
      xdebug.mode=debug
      xdebug.client_host=127.0.0.1
      xdebug.client_port=9003
      
    • 重启:sudo systemctl restart php8.2-fpm
    • IDE 侧(如 VS Code)选择 DBGp/Xdebug,端口设为 9003,访问页面触发断点即可联动调试。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Debian PHP开发环境怎么搭建
本文地址: https://pptw.com/jishu/753558.html
Debian PHP与Nginx如何配置 如何在Debian上使用Python进行网络爬虫

游客 回复需填写必要信息