Windows下借助WSL搭建PHP开发环境

💡 原文中文,约5600字,阅读约需14分钟。
📝

内容提要

本文记录了在Windows下手动安装PHP开发环境的过程,使用WSL+Xdebug实现在Visual Studio Code中开发Yii项目的效果。步骤包括安装WSL、编译安装Nginx和Nchan插件、安装配置PHP7.2和MariaDB、配置Xdebug、安装配置VSCode和PHP Debug插件。

🔎

延伸解读

为什么选择WSL而非Windows原生环境

文章指出,在Windows下编译安装Nginx及其Nchan插件较为麻烦,而WSL允许在Windows上直接运行Linux环境,避免了虚拟机和双启动的繁琐。对于需要Nginx+Nchan的Yii项目,WSL提供了更接近生产环境的Linux工具链,同时仍能使用Windows下的VSCode进行开发,兼顾了兼容性与便利性。

Xdebug端口配置的关键细节

配置Xdebug时,文章特别提醒远程调试端口不要使用9000,因为WSL中的php-fpm已占用该端口,因此Xdebug的remote_port设为9001。同时,由于WSL与Windows共享网关,remote_host可填127.0.0.1。这些细节直接影响调试能否成功连接,是搭建过程中容易忽略的环节。

Nginx与PHP-FPM的用户一致性要求

在配置php-fpm的www.conf时,文章强调user和group需改为本机用户,并且Nginx要与php-fpm使用相同的用户,同时该用户必须对代码目录有读写权限。若忽略这一点,可能导致Nginx无法访问PHP脚本或文件权限错误,是环境配置中常见的权限陷阱。

VSCode调试配置的路径映射

在VSCode的launch.json中,需要设置localSourceRoot和serverSourceRoot,分别对应Windows本地源码路径和WSL中的服务器源码路径。文章示例中serverSourceRoot为/home/wwwroot/weiphp.dev,这确保了断点能在正确的文件位置生效。正确映射路径是远程调试成功的关键步骤之一。

❓

Q&A

如何在Windows上启用WSL?

在控制面板中找到“程序”设置,点击“启用或关闭Windows功能”,勾选“适用于Linux的Windows子系统”选项,点击确定并重启系统。

在WSL中如何安装Nginx和Nchan插件?

可以通过下载Nginx的deb包并使用命令安装,具体命令为:sudo dpkg -i nginx-common.ubuntu.deb 和 sudo dpkg -i nginx-extras.ubuntu.deb。

如何在WSL中配置PHP7.2?

使用命令sudo apt-get -y install php7.2安装PHP7.2,并根据需要安装常用扩展,最后编辑配置文件以设置用户和端口。

如何在VSCode中配置PHP Debug插件?

在VSCode中安装PHP Debug插件,编辑用户设置,添加php.executablePath和其他相关配置,最后在.vscode/launch.json中设置调试参数。

Xdebug的配置步骤是什么?

安装Xdebug后,编辑php.ini文件,添加zend_extension和相关的Xdebug配置参数,如xdebug.remote_enable和xdebug.remote_host等。

在Windows中如何安装PHP7.2?

下载PHP7.2并解压到指定目录,然后将其添加到系统的Path中,最后在命令行中运行php -i检查安装是否成功。

🏷️

标签

➡️

继续阅读