Проблемы с проверкой отладки веб-сервера PhpStorm - PullRequest
0 голосов
/ 06 декабря 2018

В PhpStorm я пытаюсь отладить код на удаленном сервере.Проверка отладки веб-сервера постоянно сообщает мне, что указанный URL-адрес недоступен (404).

Мой хост находится под Windows

Мой сервер находится на виртуальной машине VirtualBox (Debian 9)

Я редактирую код с помощью PhpStorm на сетевом диске V:, указывая на папку /var/www/ моей виртуальной машины.Это не общая папка VirtualBox (не поддерживается в Debian 9).Поэтому, когда я работаю над V:\myproject, я на самом деле работаю над /var/www/myproject на ВМ через smb.

Я следовал многим учебникам, но никогда не получался.В настоящее время у меня есть следующая конфигурация:

  • Удаленный интерпретатор PHP Cli, использующий конфигурацию развертывания
  • Указанный тип подключения конфигурации развертывания - SFTP (проверка соответствия разрешена).Корневой путь /var/www/myproject.URL веб-сервера: https://my.project.local (URL был проверен в моем браузере)
  • Отображение локального пути: V:\myproject
  • Отображение пути развертывания: /
  • Отображение веб-пути:/pub (этот проект является приложением Magento 2. Pub - веб-корень)

Когда я пытаюсь проверить отладку веб-сервера, я выбираю «Удаленный веб-сервер», путь для создания сценария проверки:V:\myproject\pub, сервер развертывания является ранее описанной конфигурацией развертывания.

Проверка завершается неудачно, говоря: «Указанный URL недоступен, вызвано:« Запрос не выполнен с кодом состояния 404 ».

Имееткто-нибудь уже прошел через эту конкретную настройку?(PhpStorm + удаленная отладка для подключения VirtualBox VM + SFTP).Вам удалось заставить это работать?Может быть, я должен попробовать другой способ заставить это работать?Помощь будет высоко оценена!

1 Ответ

0 голосов
/ 23 июля 2019

Немного поздно, но для тех, кто сталкивается с этой проблемой, которая работает с Magento 2 на Nginx, посмотрите nginx.conf.sample или любой другой файл ngxin.conf, который вы используете.

Найдите приведенный ниже блок:

# PHP entry point for main application
location ~ ^/(index|get|static|errors/report|errors/404|errors/503|health_check)\.php$ {
    try_files $uri =404;
    fastcgi_pass   fastcgi_backend;
    fastcgi_buffers 1024 4k;

    fastcgi_param  PHP_FLAG  "session.auto_start=off \n suhosin.session.cryptua=off";
    fastcgi_param  PHP_VALUE "memory_limit=756M \n max_execution_time=18000";
    fastcgi_read_timeout 600s;
    fastcgi_connect_timeout 600s;

    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

Измените его так, чтобы Nginx мог обслуживать скрипт проверки:

# PHP entry point for main application
location ~ ^/(index|get|static|errors/report|errors/404|errors/503|health_check|_intellij_phpdebug_validator)\.php$ {
    try_files $uri =404;
    fastcgi_pass   fastcgi_backend;
    fastcgi_buffers 1024 4k;

    fastcgi_param  PHP_FLAG  "session.auto_start=off \n suhosin.session.cryptua=off";
    fastcgi_param  PHP_VALUE "memory_limit=756M \n max_execution_time=18000";
    fastcgi_read_timeout 600s;
    fastcgi_connect_timeout 600s;

    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}
...