PhpStorm可以调试使用Nginx的X-Accel-Redirect重定向到的文件吗?

时间:2019-11-02 04:29:28

标签: debugging nginx phpstorm xdebug x-accel-redirect

我正在使用Nginx的X-Accel-Redirect来提供位于Webroot之外的文件(redirected.php)。 webroot是/usr/share/nginx/html,而我要调试的文件是从/usr/share/nginx/downloads

提供的

我在浏览器中开始Xdebug(在此阶段调试有效)。浏览器有时会请求website1.com/learning/downloads/url, Nginx使用以下规则将请求重定向到 redirected.php

# Enable X-Accel-Redirect
location /learning/downloads/ {
root /usr/share/nginx/downloads;
rewrite ^/(.*)$ /redirected.php last;
}

不幸的是,我无法通过redirect.php在任何断点处暂停。

在PhpStorm中使用X-Accel-Redirect时是否无法调试?还是更可能是一个映射问题?我们将不胜感激提出有关如何克服此问题的建议。

1 个答案:

答案 0 :(得分:2)

这是一个映射问题。问题的部分原因是由于redirected.php位于webroot之外的文件夹中。

要修复此问题,我进入了文件->设置->语言和框架-> PHP->服务器,并如下图所示对其进行了配置。

Phpstorm Config for debugging files outside webroot

我也将xdebug_break();添加到redirected.php中的代码