Тайм-аут xdebug из-за брандмауэра Windows
У нас проблема с запуском xdebug на сервере разработки, когда клиенты Windows пытаются открыть веб-сайты на этом сервере. Сервер отправляет клиенту запрос xdebug, который, похоже, застревает в брандмауэре Windows, если на порту xdebug не прослушивается клиентское приложение (например, phpstorm). Это приводит к превышению времени ожидания в браузере при попытке открыть веб-сайт с сервера разработки.
Похоже, проблема в невидимом режиме брандмауэра Windows, который нельзя отключить и который не отправляет порт ICMP, недоступный, обратно на сервер отладки.
Единственное решение, найденное до сих пор, - это полное включение брандмауэра для внутреннего домена.
Есть ли шанс избавиться от этого поведения без необходимости устанавливать специальное программное обеспечение на любом клиенте Windows в сети, пытающемся открыть веб-сайт на сервере разработки?
Один из следующих вариантов будет для нас хорошим решением, но мы не знаем, как этого добиться:
- Наличие специальной конфигурации php / xdebug для поддоменов
- Изменение поведения брандмауэра Windows на порту xdebug
Следующие опции были отменены по одной или другой причине:
- Установка клиентского приложения (например, PHPStorm), прослушивающего соответствующий порт на каждом клиенте Windows.
- Полностью отключить брандмауэр Windows.
- Полностью отключить xdebug или требовать специальных параметров запроса для каждого запроса.
1 ответ
Я использую Windows 7, сервер EasyPHP 13.1 Dev и NetBeans 7.3.1. Когда я нажимал "отладка", мой веб-браузер (Chrome) просто ждал страницы, которая так и не появилась. Я определил, что проблема заключается в брандмауэре Windows, отключившись от Интернета, а затем отключив брандмауэр Windows.
Мое решение состояло в том, чтобы разрешить больше программ через брандмауэр. Панель управления -> Система и безопасность -> Брандмауэр Windows -> Разрешить программу или функцию через брандмауэр Windows. Я добавил несколько исполняемых файлов, чтобы быть в безопасности, но я почти уверен, что это дало разрешение на выполнение исполняемых файлов php (php.exe и php-win.exe).