首页主机资讯如何配置Linux服务器上的PHP

如何配置Linux服务器上的PHP

时间2025-12-16 08:35:04发布访客分类主机资讯浏览239
导读:Linux服务器上配置PHP的实用步骤 一 准备与安装 更新系统并安装常用组件(以 Ubuntu/Debian 为例): 更新索引与系统:sudo apt update && sudo apt upgrade -y 安装...

Linux服务器上配置PHP的实用步骤

一 准备与安装

  • 更新系统并安装常用组件(以 Ubuntu/Debian 为例):
    • 更新索引与系统:sudo apt update & & sudo apt upgrade -y
    • 安装 Web 与 PHP:sudo apt install nginx php-fpm php-cli php-mysql php-gd php-curl php-mbstring php-xml php-zip -y
    • 其他发行版(按需选择):
      • CentOS/RHEL 7:先 yum install epel-release,再添加 webtatic 源后安装 PHP-FPM 与扩展
      • Fedorasudo dnf install php php-fpm php-mysqlnd …
  • 验证安装:php -v;查看 php-fpm 状态:sudo systemctl status php-fpm*(匹配已安装版本)。

二 找到并修改 php.ini

  • 定位配置文件:php --ini(确认加载的 Loaded Configuration File 路径)
  • 常见位置(按 SAPI 区分,版本号以实际为准):
    • CLI:/etc/php/{ version} /cli/php.ini
    • FPM:/etc/php/{ version} /fpm/php.ini
    • Apache 模块:/etc/php/{ version} /apache2/php.ini
  • 常用参数建议(编辑后需重启相应服务):
    • 时区:date.timezone = Asia/Shanghai
    • 内存:memory_limit = 256M
    • 上传:upload_max_filesize = 20M;post_max_size = 20M
    • 执行时间:max_execution_time = 300
    • 错误日志:log_errors = On;error_log = /var/log/php_errors.log
  • 生效方式:
    • FPM:sudo systemctl restart php{ version} -fpm
    • Apache:sudo systemctl restart apache2
    • CLI 修改即时生效(无需重启)。

三 与 Web 服务器集成

  • Nginx + PHP-FPM(推荐)
    • 站点配置示例(/etc/nginx/sites-available/default 或自定义站点):
      server {
          
          listen 80;
          
          server_name your_domain_or_ip;
          
          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:/var/run/php/php{
      version}
          -fpm.sock;
            # 版本号需与实际一致
              fastcgi_index index.php;
          
              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 libapache2-mod-php{ version}
    • 启用模块:sudo a2enmod php{ version}
    • 可选:将 index.php 置于 DirectoryIndex 首位(/etc/apache2/mods-enabled/dir.conf)
    • 重载:sudo systemctl reload apache2
  • 连接方式与要点
    • FPM 可与 Web 服务器通过 Unix Socket(如:/var/run/php/php{ version} -fpm.sock)或 TCP(如:127.0.0.1:9000)通信;同机优先用 Unix Socket 性能更佳。

四 测试与验证

  • 创建测试文件:sudo nano /var/www/html/info.php
    <
        ?php
    phpinfo();
    
    
  • 访问:http://服务器IP或域名/info.php,看到 PHP 信息页即表示解析正常
  • 安全建议:验证完成后删除 info.php,避免泄露环境信息。

五 常见问题与优化

  • 修改未生效
    • 确认编辑的是正确的 php.ini(CLI 与 FPM/Apache 可能不同);修改后重启 php-fpmApache;用 php --ini 复核加载路径。
  • 找不到 php.ini
    • 执行 php --ini 查看 Loaded Configuration File;若为空,可能未安装对应 SAPI 或路径异常。
  • 上传/内存不足
    • 调整 upload_max_filesize、post_max_size、memory_limit;同时关注 max_execution_timemax_input_vars
  • FPM 进程与性能
    • 编辑 /etc/php/{ version} /fpm/pool.d/www.conf
      • 进程管理(动态/静态):pm = dynamic/static
      • 关键参数:pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers
      • 通信方式:listen = /run/php/php{ version} -fpm.sock(同机)或 127.0.0.1:9000(跨机/集群)
  • 防火墙与端口
    • 确保 80/443 端口开放(云服务器安全组/系统防火墙);Nginx/Apache 启动后访问公网 IP 验证。

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


若转载请注明出处: 如何配置Linux服务器上的PHP
本文地址: https://pptw.com/jishu/772460.html
Linux如何配置PHP的执行时间 Flutter在Debian上的依赖如何管理

游客 回复需填写必要信息