准备工作
在搭建PHP网站环境前,需明确以下基础条件:

- 操作系统:推荐使用Linux(如Ubuntu/CentOS)或Windows Server;个人开发也可选择macOS或Windows桌面版。
- 核心组件:需要安装Web服务器(Apache/Nginx)、PHP解释器、数据库(MySQL/MariaDB等),三者统称为“LAMP”(Linux+Apache+MySQL+PHP)或“LNMP”(Linux+Nginx+MySQL+PHP)架构。
Linux系统下的环境配置(以Ubuntu为例)
安装Apache Web服务器
通过终端执行命令更新软件包并安装Apache:
sudo apt update && sudo apt install apache2 -y
安装完成后,启动服务并设置开机自启:
sudo systemctl start apache2 # 启动服务 sudo systemctl enable apache2 # 开机自启
测试是否成功:打开浏览器访问 http://本地IP
(或localhost
),应看到Apache默认页面,若无法访问,检查防火墙是否放行80端口(默认HTTP端口)。
安装PHP及扩展
Ubuntu仓库提供主流版本的PHP支持,例如安装PHP 8.1及其常用扩展:

sudo apt install python3-certbot-apache libapache2-mod-php8.1 php8.1-cli php8.1-mysql php8.1-gd php8.1-json php8.1-mbstring php8.1-xmlrpc php8.1-soap php8.1-zip -y
libapache2-mod-php8.1
:让Apache支持PHP解析;- 其他扩展(如
mysql
用于连接数据库,gd
支持图像处理):根据项目需求选择安装。
重启Apache使配置生效:sudo systemctl restart apache2
验证PHP版本:创建测试文件
info.php
为<?php phpinfo(); ?>
),上传至Apache默认目录(通常为/var/www/html
),通过浏览器访问该文件,即可查看PHP详细信息。
配置MySQL数据库
安装MySQL服务并初始化:
sudo apt install mysql-server -y sudo systemctl start mysql # 启动MySQL sudo systemctl enable mysql # 开机自启
首次运行时会提示设置root用户密码,按提示操作即可,若遗忘密码,可通过以下命令重置:
sudo systemctl stop mysql # 停止服务 sudo mysqld_safe --skip-grant-tables & # 无授权表模式启动 mysql -u root # 登录后执行 FLUSH PRIVILEGES; exit; sudo systemctl start mysql # 重新启动
远程连接MySQL需修改配置文件(/etc/mysql/mysql.conf.d/mysqld.cnf
),注释掉bind-address = 127.0.0.1
,并添加skip-networking=0
,然后重启服务。

关联Apache与PHP
确保Apache已加载PHP模块:检查/etc/apache2/mods-enabled/
目录下是否存在php8.1.load
符号链接(若无则手动创建),编辑虚拟主机配置文件(如/etc/apache2/sites-available/000-default.conf
),添加以下内容以支持.php
文件解析:
<FilesMatch "\.php$"> SetHandler application/x-httpd-php </FilesMatch>
重新加载Apache配置:
sudo systemctl reload apache2
Windows系统下的环境配置
下载并安装组件
- Web服务器:推荐使用XAMPP(集成了Apache、MySQL、PHP等),官网下载地址:https://www.apachefriends.org/index.html,下载后解压到任意目录(如
C:\xampp
)。 - 启动服务:运行XAMPP控制面板,分别点击“Start”按钮启动Apache和MySQL服务,默认情况下,Apache监听80端口,MySQL监听3306端口;若被占用可调整端口号(通过控制面板的“Config”选项修改)。
- 验证PHP:在XAMPP的
htdocs
文件夹中创建test.php
文件,写入<?php echo "Hello PHP!"; ?>
,通过浏览器访问http://localhost/test.php
,应显示“Hello PHP!”。
注意事项
- 避免与其他程序冲突(如IIS可能占用80端口),可通过XAMPP控制面板将Apache切换至其他端口(如8080);
- PHP版本切换:在XAMPP控制面板的“PHP”标签页中选择不同版本并重启服务即可。
常见环境组合对比表
特性 | LAMP(Apache+MySQL+PHP) | LNMP(Nginx+MySQL+PHP) | WAMP(Windows+Apache+MySQL+PHP) |
---|---|---|---|
适用场景 | 传统稳定型项目 | 高并发、低资源消耗场景 | Windows桌面快速开发 |
配置复杂度 | 中等(需手动调整部分参数) | 较高(需熟悉Nginx配置文件) | 简单(图形化界面操作) |
性能表现 | 均衡 | 静态资源处理更快 | 依赖系统资源分配 |
社区支持 | 最广泛 | 逐渐流行 | 适合新手入门 |
相关问题与解答
Q1:为什么浏览器访问PHP文件时直接下载而不是执行?
A:可能是Apache未正确加载PHP模块,解决方法:①确认已安装libapache2-mod-phpX.X
(Linux)或对应Windows组件;②检查Apache配置文件中是否启用了PHP解析(如AddType application/x-httpd-php .php
);③重启Web服务器使配置生效。
Q2:如何修改PHP的上传文件大小限制?
A:编辑PHP配置文件(Linux下为/etc/php/8.1/apache2/php.ini
,Windows下为XAMPP的php.ini
),找到upload_max_filesize
和post_max_size
参数,将其值调大(如改为upload_max_filesize = 50M
),保存后重启Web