TOP云提供高性价比云服务器租用,有中国内地/港澳台、海外等全球各地节点,TOP云国内云服务器只要有域名备案号就能直接用,无须重复备案;港澳台及海外云服务器不用备案,购买之后直接使用,省时省力省心。价格实惠,续费同价,2核2G5M仅需27元每月,8核8G50M仅需66元每月,更多配置套餐请进入下面网址了解:

TOP云总站云服务器:https://topyun.vip/server/buy.html

TOP云C站云服务器:https://c.topyun.vip/cart

在云服务器上配置PHP运行环境是搭建网站或Web应用的基础步骤。以下是详细配置方法,涵盖 Linux(CentOS/Ubuntu) 系统下的 Apache/Nginx + PHP + MySQL/MariaDB 环境搭建,以及注意事项和优化建议。


1. 配置前的准备工作

(1) 确认服务器环境

  • 操作系统:推荐 CentOS 7+/Ubuntu 20.04+/Debian 10+。

  • Web服务器:选择 Apache 或 Nginx(根据需求决定)。

  • 数据库:MySQL 5.7+ 或 MariaDB 10.4+。

  • PHP版本:推荐 PHP 7.4+ 或 PHP 8.0+(需支持常用扩展)。

(2) 更新系统软件包

# CentOS/RHEL
yum update -y

# Ubuntu/Debian
apt-get update && apt-get upgrade -y

2. 安装PHP运行环境

方案一:手动配置(适合自定义需求)

(1) 安装Web服务器

  • Apache:

    # CentOS
    yum install -y httpd
    # Ubuntu/Debian
    apt-get install -y apache2
  • Nginx:

    # CentOS
    yum install -y epel-release && yum install -y nginx
    # Ubuntu/Debian
    apt-get install -y nginx

(2) 安装PHP及扩展

  • CentOS(使用Remi仓库安装最新PHP):

    # 启用Remi仓库
    yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm
    # 安装PHP 8.0及常用扩展
    yum install -y php80 php80-php-fpm php80-php-mysqlnd php80-php-gd php80-php-mbstring php80-php-xml php80-php-zip
  • Ubuntu/Debian:

    # 添加PHP PPA源(以PHP 8.0为例)
    apt-get install -y software-properties-common
    add-apt-repository -y ppa:ondrej/php
    apt-get update
    # 安装PHP及扩展
    apt-get install -y php8.0 php8.0-fpm php8.0-mysql php8.0-gd php8.0-mbstring php8.0-xml php8.0-zip

(3) 安装数据库

  • MySQL:

    # CentOS
    yum install -y mariadb-server mariadb  # MariaDB(兼容MySQL)
    # Ubuntu/Debian
    apt-get install -y mysql-server mysql-client
  • 启动数据库并设置开机自启:

    systemctl start mariadb  # 或 mysql
    systemctl enable mariadb
  • 安全配置MySQL(可选):

    mysql_secure_installation

(4) 配置PHP与Web服务器

  • Apache + PHP:

    • 确保已安装 php 和 httpd,Apache默认支持PHP模块。

    • 重启Apache:

      systemctl restart httpd
  • Nginx + PHP-FPM:

    • 修改PHP-FPM配置(以PHP 8.0为例):

      vi /etc/php/8.0/fpm/pool.d/www.conf

      确保以下配置:

      listen = /run/php/php8.0-fpm.sock  # 或 listen = 127.0.0.1:9000
      user = www-data
      group = www-data
    • 修改Nginx虚拟主机配置(示例):

      vi /etc/nginx/conf.d/default.conf

      添加以下内容:

      server { listen 80;
          server_name localhost;
          root /var/www/html; index index.php index.html;
      
          location / {
              try_files $uri $uri/ =404;
          }
      
          location ~ \.php$ {
              include fastcgi_params;
              fastcgi_pass unix:/run/php/php8.0-fpm.sock; # 或 fastcgi_pass 127.0.0.1:9000 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
          }
      }
    • 重启Nginx和PHP-FPM:

      systemctl restart nginx php8.0-fpm

方案二:使用一键脚本(适合快速部署)

  • 安装LAMP(Linux + Apache + MySQL + PHP):

    # CentOS
    yum install -y httpd mariadb-server php php-mysqlnd
    # Ubuntu/Debian
    apt-get install -y apache2 mysql-server php php-mysql
  • 安装LNMP(Linux + Nginx + MySQL + PHP):

    # 使用脚本(如LNMP一键包) wget http://soft.vpser.net/lnmp/lnmp1.9.tar.gz && tar zxf lnmp1.9.tar.gz && cd lnmp1.9 && ./install.sh

3. 验证PHP环境

(1) 创建PHP测试文件

echo "<?php phpinfo(); ?>" > /var/www/html/info.php
  • Apache默认目录:/var/www/html/

  • Nginx默认目录:/usr/share/nginx/html/ 或 /var/www/html/

(2) 访问测试页面

在浏览器输入服务器IP地址,访问 http://服务器IP/info.php,应显示PHP信息页面。


4. 配置优化与安全

(1) 调整PHP配置

  • 修改 php.ini 文件(路径根据PHP版本不同):

    vi /etc/php/8.0/cli/php.ini  # CLI配置
    vi /etc/php/8.0/fpm/php.ini  # FPM配置

    关键参数调整:

    memory_limit = 256M          # 内存限制
    upload_max_filesize = 32M    # 上传文件大小限制
    max_execution_time = 300     # 脚本执行时间

(2) 安全加固

  • 禁用危险PHP函数:

    disable_functions = exec,passthru,shell_exec,system,proc_open,popen
  • 限制PHP访问目录:

    open_basedir = /var/www/html/
  • 防火墙配置:

    # 开放HTTP/HTTPS端口
    firewall-cmd --permanent --add-service=http
    firewall-cmd --permanent --add-service=https
    firewall-cmd --reload

5. 常见问题与解决方案

(1) PHP页面显示空白或500错误

  • 可能原因:PHP配置错误、权限问题、内存不足。

  • 解决方法:

    • 检查PHP错误日志:

      tail -f /var/log/php-fpm/error.log # 或 /var/log/apache2/error.log
    • 确保文件权限正确:

      chown -R www-data:www-data /var/www/html/  # Apache
      chown -R nginx:nginx /var/www/html/        # Nginx

(2) 数据库连接失败

  • 可能原因:MySQL服务未启动、用户权限不足、php.ini未启用MySQL扩展。

  • 解决方法:

    • 检查MySQL状态:

      systemctl status mariadb
    • 验证数据库用户权限:

      GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'localhost' IDENTIFIED BY '密码';
      FLUSH PRIVILEGES;

(3) Nginx/Apache无法解析PHP文件

  • 可能原因:PHP-FPM未启动、Nginx配置错误。

  • 解决方法:

    • 检查PHP-FPM状态:

      systemctl status php8.0-fpm
    • 确保Nginx配置中正确指向PHP-FPM套接字或端口。


6. 各方案对比

方案优点缺点
手动配置灵活可控,适合定制化需求需熟悉命令行,配置较复杂
一键脚本快速部署,适合新手可能包含非必要软件,需手动优化

总结

  • 推荐步骤:

    1. 安装Web服务器(Apache/Nginx)。

    2. 安装PHP及扩展(通过包管理器或脚本)。

    3. 安装数据库(MySQL/MariaDB)并配置PHP连接。

    4. 验证环境并优化安全设置。

  • 适用场景:

    • 手动配置:适合生产环境或需要精细调优的场景。

    • 一键脚本:适合测试环境或快速搭建原型。

通过以上步骤,你可以轻松在云服务器上配置PHP运行环境,支持WordPress、Laravel等PHP应用的部署!


不容错过
Powered By TOPYUN 云产品资讯