php 文件名.php
直接运行脚本。 ,2. 通过Web服务器:配置Apache/Nginx等服务器,将PHP文件放入网站目录,浏览器访问对应URL即可解析执行,需安装PHP及服务器模块(如libapache2-mod-php
)。在Linux系统中运行PHP程序是构建动态网站的核心步骤,需结合Web服务器、PHP解释器及数据库协同工作,以下是详细操作指南,遵循最佳实践并兼顾安全性:
运行PHP的必备组件
- Linux系统
Ubuntu/Debian或CentOS/RHEL等主流发行版(命令略有差异)。 - Web服务器
Apache或Nginx(推荐Nginx,高性能)。 - PHP解释器
需安装PHP核心及扩展(如MySQL、GD库)。 - 数据库(可选)
MySQL/MariaDB或PostgreSQL。
详细安装与配置步骤
步骤1:安装Web服务器与PHP
- Ubuntu/Debian
sudo apt update sudo apt install nginx php-fpm php-mysql # 安装Nginx、PHP及MySQL扩展
- CentOS/RHEL
sudo yum install epel-release sudo yum install nginx php php-fpm php-mysqlnd
步骤2:配置Web服务器处理PHP
-
Nginx配置示例(编辑
/etc/nginx/sites-available/default
):server { listen 80; server_name your_domain.com; root /var/www/html; location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; # 版本号需匹配实际安装 } }
重启服务:
sudo systemctl restart nginx
-
Apache配置(自动处理PHP,无需额外设置)。
步骤3:验证PHP运行
- 创建测试文件:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
- 浏览器访问
http://服务器IP/info.php
,显示PHP信息页即成功。
部署实际PHP程序
以WordPress为例:
- 下载并解压到Web目录:
cd /var/www/html sudo wget https://wordpress.org/latest.tar.gz sudo tar -xzvf latest.tar.gz sudo chown -R www-data:www-data wordpress # 授权Web服务器用户
- 创建MySQL数据库:
CREATE DATABASE wordpress; CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'password'; GRANT ALL ON wordpress.* TO 'wpuser'@'localhost';
- 访问
http://服务器IP/wordpress
按引导完成安装。
安全与优化关键点
- 权限控制
- Web目录权限设为
755
,文件为644
:sudo find /var/www/html -type d -exec chmod 755 {} ; sudo find /var/www/html -type f -exec chmod 644 {} ;
- 避免使用
root
用户运行Web服务。
- Web目录权限设为
- 防火墙设置
开放80/443端口:sudo ufw allow 'Nginx Full' # Ubuntu sudo firewall-cmd --permanent --add-service=http --add-service=https # CentOS
- PHP安全配置
- 禁用危险函数(编辑
/etc/php/8.1/fpm/php.ini
):disable_functions = exec,passthru,shell_exec,system expose_php = Off
- 禁用危险函数(编辑
- 启用HTTPS
使用Let’s Encrypt免费证书:sudo apt install certbot python3-certbot-nginx # Ubuntu sudo certbot --nginx
故障排查
- 502 Bad Gateway:检查PHP-FPM是否运行:
systemctl status php-fpm
。 - 空白页面:确保PHP文件包含
<?php ?>
标签,并检查错误日志:tail -f /var/log/nginx/error.log # Nginx日志 tail -f /var/log/php-fpm/error.log # PHP-FPM日志
- 权限拒绝:运行
sudo chown -R www-data:www-data /var/www/html
。
Linux运行PHP需环境配置、权限管理及安全加固三者结合,定期更新软件、备份数据、监控日志是长期稳定运行的关键,本文所述步骤已在Ubuntu 22.04及CentOS 9上验证,适用于生产环境部署。
引用说明:操作指南参考PHP官方安装文档、Nginx配置手册及Linux权限管理最佳实践,安全建议基于OWASP Web安全标准。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/26795.html