而 Linux,作为最为流行和稳定的服务器操作系统之一,为 PHP 提供了理想的运行环境
本文将详细介绍如何在 Linux 系统上部署 PHP,帮助您构建一个高效、稳定的 Web 开发环境
一、准备工作 在开始部署 PHP 之前,确保您已经具备以下条件: 1.Linux 服务器:可以是物理服务器或虚拟机,推荐使用 CentOS、Ubuntu 等流行的 Linux 发行版
2.SSH 访问权限:通过 SSH 连接到您的服务器,这是进行远程管理的基本方式
3.域名和 DNS 设置(可选):如果您计划将网站公网访问,需要有一个域名,并确保 DNS 记录正确指向您的服务器 IP 地址
二、安装 Web 服务器(Apache 或 Nginx) PHP 通常与 Web 服务器一起使用,最常见的组合是 Apache 或 Nginx
下面分别介绍这两种服务器的安装方法
Apache 安装 对于 CentOS: sudo yum update -y sudo yum install httpd -y sudo systemctl start httpd sudo systemctl enable httpd 对于 Ubuntu: sudo apt update sudo apt install apache2 -y sudo systemctl start apache2 sudo systemctl enable apache2 安装完成后,可以通过访问服务器的 IP 地址或域名来验证 Apache 是否成功运行
Nginx 安装 对于 CentOS: sudo yum install epel-release -y sudo yum install nginx -y sudo systemctl start nginx sudo systemctl enable nginx 对于 Ubuntu: sudo apt update sudo apt install nginx -y sudo systemctl start nginx sudo systemctl enable nginx Nginx 安装完成后,同样通过访问服务器的 IP 地址或域名进行验证
三、安装 PHP 及其扩展 CentOS 上的 PHP 安装 使用 Remi 仓库来获取最新版本的 PHP: sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm sudo yum-config-manager --enable remi-php74 sudo yum install php php-fpm php-mysqlnd php-xml php-mbstring php-zip php-curl php-gd -y sudo systemctl start php-fpm sudo systemctl enable php-fpm Ubuntu 上的 PHP 安装 sudo apt install php libapache2-mod-php php-mysql php-xml php-mbstring php-zip php-curl php-gd -y 如果使用 Nginx,还需安装 PHP-FPM: sudo apt install php-fpm -y sudo systemctl start php7.4-fpm sudo systemctl enable php7.4-fpm 四、配置 Web 服务器与 PHP 集成 Apache 配置 确保 Apache 加载 PHP 模块: sudo a2enmod php sudo a2enconf php7.4-fpm(如果使用 PHP-FPM) sudo systemctl restart apache2 创建测试页面 `/var/www/html/info.php` 来验证 PHP 是否工作: 访问 `http://your_server_ip/info.php`,如果看到 PHP 配置页面,说明 PHP 已成功集成
Nginx 配置 编辑 Nginx 配置文件(如`/etc/nginx/sites-available/default`): server { listen 80; server_nameyour_domain_or_ip; root /var/www/html; index index.php index.html index.htm; location/ { try_files $uri $uri/ =404; } location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; } location ~ /.ht { deny all; } } 重启 Nginx: sudo systemctl restart nginx 同样,访问 `http://your_server_ip/info.php` 验证 PHP 集成
五、安全性与性能优化 1. 防火墙配置 使用 `firewalld`(CentOS)或 `ufw`(Ubuntu)配置防火墙,仅允许必要的端口(如 HTTP/HTTPS)开放: CentOS sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload Ubuntu sudo ufw allow Nginx Full sudo ufw enable 2. SELinux 配置(仅 CentOS) SELinux(安全增强型 Linux)可能阻止 Web 服务器访问 PHP 文件
确保 SELinux 处于宽容模式或正确配置: sudo setenforce 0 临时关闭 SELinux 或永久修改配置文件 /etc/selinux/config 3. PHP-FPM 优化 编辑 PHP-FPM 配置文件(如 `/etc/php-fpm.d/www.conf`),调整进程数、超时时间等参数,以适应您的负载需求
4. 定期更新与备份 定期更新系统和软件包,保持安全补丁最新: sudo yum update -y CentOS sudo apt update && sudo apt upgrade -y Ubuntu 实施定期备份策略,确保数据安全
六、实战案例:搭建 WordPress 博客 作为 PHP 应用的一个经典案例,WordPress 的部署流程如下: 1.下载 WordPress: wget https://wordpress.org/latest.tar.gz tar -xzvf latest.tar.gz sudo mvwordpress/ /var/www/html/ 2.配置 WordPress: 通过浏览器访问`http://your_server_ip/wp-admin/install.php`,按照提示完成安装,设置管理员账号和密码
3.安全加固: -删除 `wp-config-sample.php` 文件
-修改 `wp-config.php` 中的密钥
- 安装安全插件,如 Wordfence
七、总结 通过本文的详细步骤,您已经在 Linux 系统上成功部署了 PHP,并了解了如何配置 Web 服务器、进行安全性与性能优化,以及实战部署 WordPress
Linux 与 PHP 的结合为 Web 开发提供了强大的支持,无论是个人博客、企业网站还是复杂的应用系统,都能在这个平台上找到稳定、高效的解决方案
随着技术的不断进步,持续学习和探索新的工具和最佳实践,将帮助您在 Web 开发领域保持竞争力