温馨提示×

Debian PHP如何安装和配置

小樊
31
2025-12-15 00:01:37
栏目: 编程语言

Debian 上安装与配置 PHP 的完整步骤

一 准备与版本选择

  • 更新索引并确认可用版本:
    • sudo apt update
    • apt-cache policy php
  • Debian 12 上,直接安装 php 通常得到 PHP 8.2;如需特定版本(如 7.4/8.1/8.2),可安装对应元包或版本化包(如 php7.4、php8.2)。安装完成后用 php -v 校验。

二 安装 PHP 与常用扩展

  • 安装基础包与常用扩展(按需增删):
    • sudo apt install php php-cli php-fpm php-json php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-bcmath
  • 若使用 Nginx,务必安装 php-fpm;若使用 Apache 且采用模块方式,安装 libapache2-mod-php。安装完成后可 systemctl status php-fpm 查看 FPM 状态。

三 配置 PHP 与 PHP-FPM

  • 配置文件路径(按 SAPI 区分):
    • CLI:/etc/php//cli/php.ini
    • FPM:/etc/php//fpm/php.ini
  • 常用性能与安全项(示例值,按业务调整):
    • memory_limit = 256M
    • upload_max_filesize = 100M
    • post_max_size = 100M
    • max_execution_time = 300
    • opcache.enable = On
    • opcache.memory_consumption = 64
    • opcache.max_accelerated_files = 4000
  • FPM 池配置(/etc/php///fpm/pool.d/www.conf):
    • listen = /run/php/php-fpm.sock
    • listen.owner = www-data;listen.group = www-data
    • user = www-data;group = www-data
  • 生效与验证:
    • sudo systemctl restart php****-fpm
    • php -i | grep opcache.enable 或创建 phpinfo 页面核对。

四 与 Web 服务器集成

  • Nginx 示例(站点配置片段):
    • location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php****-fpm.sock; }
    • 修改后执行:sudo nginx -t && sudo systemctl restart nginx
  • Apache 两种常见方式:
    • 模块方式(libapache2-mod-php):安装后启用对应模块并重启
      • sudo a2enmod php****;sudo systemctl restart apache2
    • FPM 方式(推荐与 Nginx 一致使用 FPM):
      • sudo a2enmod proxy_fcgi setenvif
      • 在 VirtualHost 中使用 SetHandler:
        • <FilesMatch .php$> SetHandler “proxy:unix:/run/php/php****-fpm.sock|fcgi://localhost”
      • sudo systemctl restart apache2

五 验证与常用维护

  • 验证安装:
    • echo “” | sudo tee /var/www/html/info.php
    • 浏览器访问:http://服务器IP/info.php(生产环境请删除该文件)
  • 多版本并存与切换(示例思路):
    • 同时安装多个版本(如 php7.4、php8.2),通过安装对应的 libapache2-mod-phpX.Y 启用某版本模块,或在不同站点使用不同 FPM 套接字(/run/php/phpX.Y-fpm.sock)分流。
  • 调试与开发:
    • 安装调试器:sudo apt install php-xdebug
    • 在 php.ini 中启用(示例):
      • zend_extension=xdebug.so
      • xdebug.mode=debug
      • xdebug.client_host=127.0.0.1
      • xdebug.client_port=9003
    • 重启 Web 服务或 FPM 后配合 IDE 调试。

0