Windows系统从零搭建PHP环境,新手友好的3种方案、避坑指南及一键安装包详解

2026-09-25 10:15:54 200阅读
本文为Windows系统新手提供从零搭建PHP环境的实用指南,共介绍3种低门槛友好方案,其中重点提及一键安装包这类简便路径,帮助新手避开常见配置坑点,无需复杂操作即可快速完成PHP环境搭建,适配零基础用户的学习与开发需求。

很多刚接触PHP开发的新手,第一步往往卡在环境搭建环节:要么是网上教程年代久远版本对不上,要么是组件配置错了跑不起来,折腾大半天还没写出第一行echo "Hello World",其实Windows下搭建PHP环境远没有想象中复杂,不管你是想快速上手写代码,还是想模拟生产环境做调试,都能找到适合自己的方案,今天就从新手最易上手的方案讲起,一步步带你把PHP开发环境在Windows上搭稳。


先明确:3种方案怎么选?

在动手之前,先根据自己的需求选对方案,能少走90%的弯路:

Windows系统从零搭建PHP环境,新手友好的3种方案、避坑指南及一键安装包详解

  1. 集成环境包(90%新手推荐):把PHP、Web服务器(Nginx/Apache)、数据库(MySQL)等常用组件打包好,一键安装不用手动改配置,适合刚入门、想快速开始写代码的开发者,常用的有PhpStudy、XAMPP、WampServer。
  2. 手动原生搭建:单独下载各个组件自己配置,自由度高,能精准匹配版本、熟悉各个环节的配置逻辑,适合想深入了解环境原理、需要模拟生产环境配置的开发者。
  3. WSL2方案:在Windows里运行原生Linux子系统,在子系统里搭PHP环境,和线上Linux服务器环境几乎完全一致,适合后期做项目开发、避免跨环境兼容问题的开发者。

10分钟搞定!PhpStudy集成环境搭建(新手首选)

如果你是第一次接触PHP,完全不需要一开始就啃复杂的配置文件,用集成包最快能在10分钟内把环境跑通,这里以国内开发者最常用、对中文用户最友好的PhpStudy为例:

步骤1:下载安装PhpStudy

直接去PhpStudy官网下载Windows版本的安装包,注意不要去第三方下载站下,避免捆绑垃圾软件,安装的时候建议选非系统盘的纯英文路径(比如D:\phpstudy_pro),不要放在中文或者带空格、特殊符号的文件夹里(比如D:\编程工具\php环境这类路径很容易后续出bug),全程点下一步即可完成安装。

步骤2:启动服务、验证环境

打开PhpStudy,在首页「软件管理」里先选你需要的组件版本:

  • PHP版本建议选7.4/8.0/8.1这几个主流稳定版(如果是跑老项目可以选5.6,新项目优先8.0+)
  • Web服务器新手推荐选Nginx,占用资源少、配置简单,习惯Apache的也可以选Apache
  • 数据库选MySQL5.7(兼容性最好)或者8.0版本 选完之后回到「首页」,点WNMP(对应Windows+Nginx+MySQL+PHP)旁边的启动按钮,等待Nginx和MySQL的状态变成绿色运行中就说明启动成功了。 这时候打开浏览器,在地址栏输入http://localhost,能看到PhpStudy的默认欢迎页就说明环境正常,你写的PHP代码只要放到PhpStudy默认的网站根目录D:\phpstudy_pro\WWW下,比如新建一个test.php文件写<?php phpinfo(); ?>,浏览器访问http://localhost/test.php就能看到PHP的版本、配置等详细信息。

    小技巧

    PhpStudy自带了站点管理功能,你可以给每个项目绑定一个本地域名(比如http://myblog.test),不用所有项目都挤在localhost下;还支持一键切换PHP版本、开启OpenSSL、Redis、Memcached等常用扩展,不用手动改配置文件,对新手极其友好。


手动原生搭建,搞懂每个配置环节

如果想搞懂PHP环境的运行逻辑,或者需要特定的版本/自定义扩展,就可以选手动搭建的方式,整个过程其实就是“下载组件→改配置→启动服务”三步:

准备工作

提前确认自己的Windows系统是64位还是32位(现在基本都是64位),所有组件都要选相同架构的版本,避免兼容问题,我们需要准备3个核心组件:

  1. PHP(Windows版可从官网windows.php.net下载,线程安全(Thread Safe)版本适配Apache,非线程安全(Non Thread Safe)适配Nginx,别下错)
  2. Web服务器:选Apache(官网下载Windows版)或者Nginx(官网下载稳定版)
  3. 数据库:MySQL(官网下载Windows社区版) 我们以最常用的「Nginx+PHP+MySQL」组合为例:

    步骤1:配置PHP

    把下载好的PHP压缩包解压到纯英文路径,比如D:\dev\php8.2,进入文件夹找到php.ini-development文件,复制一份重命名为php.ini,这个就是PHP的核心配置文件,需要改几个基础配置:

  • 打开php.ini,找到;extension_dir = "ext",去掉前面的分号,改成extension_dir = "D:/dev/php8.2/ext"(填你自己的PHP路径下的ext文件夹绝对路径,注意斜杠方向)
  • 往下翻找到扩展列表,把你需要的扩展前面的分号去掉就行,比如常用的extension=curl、extension=gd、extension=mbstring、extension=mysqli、extension=pdo_mysql、extension=openssl,其他扩展等用到了再开就行,不用全开。
  • 配置完成后,打开Windows命令提示符(CMD),进入PHP所在目录,输入php -v,如果能输出版本号就说明PHP配置正常。

    步骤2:配置Nginx

    把Nginx压缩包解压到D:\dev\nginx目录,先直接双击目录里的nginx.exe,浏览器访问http://localhost看到Nginx欢迎页就说明启动成功,接下来需要让Nginx能处理PHP请求: 打开Nginx目录下conf/nginx.conf配置文件,找到以下这段被注释的配置,去掉注释并修改成你的路径:

    location ~ \.php$ {
      root           D:/dev/nginx/html; # 你的网站根目录,要和下面的root配置一致
      fastcgi_pass   127.0.0.1:9000; # PHP-CGI的默认端口
      fastcgi_index  index.php;
      fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name; # 这里一定要改对,不然会出现No input file specified错误
      include        fastcgi_params;
    }

    改完之后在CMD里进入Nginx目录,输入nginx -s reload重载配置,然后需要启动PHP的CGI服务,在CMD里执行: D:\dev\php8.2\php-cgi.exe -b 127.0.0.1:9000 -c D:\dev\php8.2\php.ini 这时候在Nginx的html目录下新建info.php写<?php phpinfo();?>,浏览器访问http://localhost/info.php能看到PHP信息页,就说明Nginx和PHP已经连通了。

    步骤3:安装MySQL

    MySQL下载后直接按向导安装即可,安装过程中设置好root用户的密码,记住端口默认是3306,安装完成后可以用Navicat或者命令行连接测试,能正常连接就没问题。

    小提示

    手动搭建的话,每次开机都要手动启动Nginx、PHP-CGI、MySQL三个服务比较麻烦,可以用NSSM工具把这几个程序注册成Windows系统服务,设置成开机自启,就不用每次手动敲命令了。


WSL2搭建,和线上环境无差别

如果你的项目最终是部署在Linux服务器上,非常推荐用WSL2(Windows子系统Linux)来搭PHP环境,能避免很多Windows和Linux之间的路径、权限、扩展兼容问题,相当于在Windows里直接用原生Linux环境,性能比虚拟机好很多。

步骤1:开启WSL2

打开Windows的PowerShell(管理员身份运行),执行命令: wsl --install 按照提示重启电脑,之后会自动安装Ubuntu子系统,设置好用户名和密码就可以进入Linux终端了。

步骤2:在Ubuntu里搭PHP环境

进入WSL的Ubuntu终端后,就和在Linux服务器上搭环境一模一样了,先更新软件源: sudo apt update && sudo apt upgrade -y 然后直接安装Nginx、MySQL、PHP以及常用扩展: sudo apt install nginx mysql-server php-fpm php-mysql php-cli php-curl php-gd php-mbstring php-xml -y 安装完成后依次启动三个服务:

sudo service nginx start
sudo service mysql start
sudo service php8.1-fpm start # 注意版本号和你安装的PHP版本一致

接下来配置Nginx解析PHP(和Linux下配置完全一致),改完配置重载Nginx,把代码放到WSL的/var/www/html目录下,Windows下直接在资源管理器地址栏输\\wsl$就能访问子系统的文件,用编辑器直接编辑代码也很方便,浏览器访问localhost就能看到效果,和线上Linux环境几乎没有差异。


常见问题避坑指南

很多新手搭环境容易踩的坑,这里统一给大家整理好解决方案:

  1. 访问PHP文件提示404/No input file specified:90%都是路径配置错了,检查Nginx/Apache里的网站根目录路径是不是正确,SCRIPT_FILENAME配置有没有问题,所有路径尽量不要有中文和空格。
  2. 启动服务提示端口被占用:Windows上的80端口经常被IIS、迅雷、微信网页版占用,要么把占用端口的程序关掉,要么在Web服务器配置里把监听端口改成8080等其他端口,访问的时候带上端口号就行。
  3. PHP扩展加载失败:检查php.ini里的extension_dir路径是不是对的,下载的扩展是不是和你的PHP版本、架构(64/32位、线程安全/非线程安全)完全匹配,不匹配的扩展是加载不起来的。
  4. 数据库连接失败:检查MySQL服务有没有正常启动,连接的端口、用户名密码是不是正确,PHP有没有开启pdo_mysql和mysqli扩展,如果是手动安装的MySQL记得给root用户开放本地连接权限。
  5. 页面输出PHP源码而不是执行结果:说明Web服务器没有把.php文件交给PHP处理,检查Nginx/Apache的PHP解析配置有没有加对,改完配置记得重载服务才会生效。

最后建议

如果是刚入门的新手,完全不用一开始就死磕手动配置,先用集成环境把PHP的基础语法、常用功能练熟,等对整个运行逻辑有概念了,再尝试手动搭建或者用WSL2环境做项目开发,环境只是写代码的工具,能快速跑起来写代码才是最重要的,不要在搭环境这个环节消磨掉学编程的兴趣——很多人学PHP的第一天,全耗在解决配置bug上,反而没写上几行代码,实在得不偿失。

文章版权声明:除非注明,否则均为亚朵原创文章,转载或复制请以超链接形式并注明出处。