环境说明

  1. phpstorm安装在windows
  2. nginx、fpm(xdebug)都在wsl环境中

遇到的问题

当有debug session进来的时候,会找不到文件设置的短短,然后控制台显示这个错误

Cannot find file '/var/www/html/pub/index.php' locally. To fix it set server name by environment variable PHP_IDE_CONFIG and restart debug session.

解决方案

安装错误提示,需要再wsl中设置环境变量。
phpstorm-xdebug.png
前提是再debug同一级别的设置中有个servers,在这里做好路径映射,然后取一个server名称,比如docker
然后再nginx server上下文中设置php_ide_config环境变量。
也可以设置wsl的环境变量。不过再nginx 或 fpm中设置针对多个项目的时候比较友好。具体设置方法如下。

windows中重启wsl

管理员身份打开powershell,执行:

net stop LxssManager
net start LxssManager

wsl(ubuntu)中php环境设置环境变量

  • nginx
    server上下文添加,fastcgi_param PHP_IDE_CONFIG 'server=[phpstorm设置中的servers名称]';重启nginx
  • fpm
    /usr/local/php/etc/php-fpm.conf,添加配置如:env[PHP_IDE_CONFIG ] = server=[phpstorm设置中的servers名称],重启fpm
  • apache
    修改配置文件conf/extra/httpd-vhosts.conf,virtualhost上下文级别添加SetEnv PHP_IDE_CONFIG server=[phpstorm设置中的servers名称]
文章目录