Windows下借助WSL搭建PHP开发环境
内容提要
本文记录了在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检查安装是否成功。