PhpStorm调试器,带有Docker容器,反向代理中的nginx和https

时间:2019-01-23 09:18:17

标签: docker nginx https phpstorm xdebug

我需要一些帮助,以便使用特定的开发配置来配置PhpStorm调试器。 在我的PC(192.168.1.23)上,我有一个PHP项目的源代码,一个dbms和一个nginx实例作为反向代理。配置Nginx以便将所有流量发送到Docker容器:

server {
        listen 80;
        listen [::]:80;

        server_name www.mysite.local;
        root /usr/share/nginx/html/;

        # pass PHP scripts to FastCGI server
        location ~ \.php$ {
               include snippets/fastcgi-php.conf;
               fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
        }

        location / {
                index index.html  index.php;
        }

}

upstream backend  {
  # configuration in order to use apache inside docker container
  server 172.17.0.2:80;
}

docker容器(172.17.0.2)已创建为:

docker run -dP --add-host=db.local:172.17.0.1 \
      -e remote_connect_back_xdbg=1 \
      -e remote_host_xdbg='192.168.1.23' \
      -v /opt/live:/opt/live \
      --name local_php_apache_container local_php_apache_image

因此Docker将我的项目(位于/ opt / live)安装在容器的/ opt / live内。容器是带有PHP 5.3 + Apache2的Debian 9。 并使用以下命令在计算机启动时自动启动:

docker exec -it local_php_apache_container /bin/bash

在docker容器中,php.ini中的xdebug配置为:

[xdebug]
xdebug.remote_connect_back=${remote_connect_back_xdbg}
xdebug.remote_enable=1
xdebug.remote_port=10123
xdebug.remote_handler=dbgp
xdebug.remote_log=/stackdriver/log/xdebug.log
xdebug.remote_mode=req
xdebug.remote_autostart=1
xdebug.remote_host=${remote_host_xdbg}
xdebug.idekey="netbeans-xdebug"

idkey是netbeans-xdebug,因为使用netbeans,调试器可以正常工作(https://www.mysite.local/index.php?XDEBUG_SESSION_START=netbeans-xdebug,带有本地不受信任证书的https)

enter image description here

enter image description here

但是我在PHPStorm和PHP解释器的位置上都有很多问题,无论是PHP内置Web服务器还是PHP远程调试配置... 有什么建议吗?

0 个答案:

没有答案