За последние 24 часа нас посетили 18494 программиста и 1612 роботов. Сейчас ищут 1913 программистов ...

Отладка PhpStorm+OpenServer

Тема в разделе "Прочие вопросы по PHP", создана пользователем Evgen219r, 19 мар 2017.

  1. Evgen219r

    Evgen219r Новичок

    С нами с:
    19 мар 2017
    Сообщения:
    11
    Симпатии:
    0
    Приветствую!

    Прошу не кидать тапками, только начал пытаться изучать php. Подобную тему на форуме видел, читал, но не помогло.

    Суть проблемы:
    Есть OpenServer, в domains папка boardway, где я и пытаюсь начать что-то делать. в данный момент, там лишь index.php с кодом:

    Код (Text):
    1. <?
    2.  
    3. echo '777'
    4.  
    5. ?>
    Через закладки openServer, добавив его туда и запустив, определил, что текущий интерпретатор PHP 5.3. Отредактировал секцию файла PHP-5.3_php.ini cледующим образом:

    Код (Text):
    1. [Xdebug]
    2. zend_extension="%sprogdir%/modules/php/%phpdriver%/ext/php_xdebug.dll"
    3. xdebug.auto_trace = 0
    4. xdebug.collect_includes = 1
    5. xdebug.dump.REQUEST = *
    6. xdebug.dump.SESSION = *
    7. xdebug.dump.SERVER = REMOTE_ADDR,REQUEST_METHOD
    8. xdebug.dump_globals = 1
    9. xdebug.dump_once = 1
    10. xdebug.dump_undefined = 1
    11. xdebug.extended_info = 1
    12. xdebug.idekey = ""
    13. xdebug.max_nesting_level = 256
    14. xdebug.overload_var_dump = 1
    15. xdebug.profiler_enable = 0
    16. xdebug.profiler_enable_trigger = 1
    17. xdebug.profiler_output_dir="%sprogdir%/userdata/temp/xdebug/"
    18. xdebug.profiler_output_name = "cachegrind.out.%H%R"
    19. xdebug.remote_autostart = 0
    20. xdebug.remote_connect_back = 1
    21. xdebug.remote_enable = 1
    22. xdebug.remote_handler = "dbgp"
    23. xdebug.remote_host = "localhost"
    24. xdebug.remote_port = 9000 1
    25. xdebug.trace_output_dir = "%sprogdir%/userdata/temp/xdebug/"
    26. xdebug.var_display_max_children = 256
    27. xdebug.var_display_max_depth = 16
    Вот настройки шторма:
    [​IMG]

    [​IMG]

    [​IMG]

    [​IMG]

    [​IMG]


    В шторме включаю ожидание соединений отладчика, ставлю точку останова, жму жука. Открывается браузер, выводит текст "777". На точке не останавливается.
    URL: http://boardway/?XDEBUG_SESSION_START=18375
    На вкладке debugger:
    Waiting for incoming connection with ide key '18375'

    Подскажите, где я затупил и как сделать, чтобы отладка заработала?
     
    #1 Evgen219r, 19 мар 2017
    Последнее редактирование: 19 мар 2017
  2. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    не надо жать жука. Нужно кнопку с трубочкой телефонной, там рядом, жмакнуть, чтобы обе трубочки зеленые были, и все. Жук - это про другое.
    Вот те гайд с нормальным подключением дебаггера в режиме слушания порта: https://habrahabr.ru/post/250323/
     
    Evgen219r нравится это.
  3. Evgen219r

    Evgen219r Новичок

    С нами с:
    19 мар 2017
    Сообщения:
    11
    Симпатии:
    0
    Спасибо. Отладка пошла, только при запуске выдаёт:
    [​IMG]
    Хотя dll на месте. Это сильно критично?
     
  4. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Если вы не используете изображения, то совсем не критично. Найдите php_imagick в конфиге php при опенсервере и удалите его оттуда. Либо найдите этот модуль где-нибудь(может он и в опенсервере есть, просто выключен), и добавьте в указанный каталог. То, что он есть на месте, не значит, что он, например, той версии, которой надо. Оно же не на отсутствие ругается, а на невозможность подключить эту dll. Тут я помочь не могу.

    Это расширение, отвечающее за обработку изображений средствами php, в общем. Если вы на лету на пыхе картинки не генерите и не режете, то забейте и отключайте смело.
    Что где да как в опенсервере я понятия не имею, сам работаю на линуксе в нормальном окружении, что и вам советую.
     
    Evgen219r нравится это.
  5. Evgen219r

    Evgen219r Новичок

    С нами с:
    19 мар 2017
    Сообщения:
    11
    Симпатии:
    0
    Буду копать. Спасибо за гайд и за советы.
    Линукс, да. Это вещь. Пока возможности нет на него перейти, но как только так сразу
     
  6. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    854
    Симпатии:
    210
    Адрес:
    Санкт-Петербург
    @Evgen219r, поставь второй операционкой)
     
    Evgen219r нравится это.
  7. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Переходить не надо. Даже второй операционкой не надо. Крайности не нужны. Поставь в VirtualBox.
     
  8. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    854
    Симпатии:
    210
    Адрес:
    Санкт-Петербург
    Не, ну второй операционкой ставить только если всерьёз, да. Для игрушек с лялей и обучению виртуалбокс, конечно
     
  9. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Ой, аргументируй, пожалуйста, в чем разница :) Чем установка второй осью круче, чем в виртуалбоксе :)
     
  10. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    854
    Симпатии:
    210
    Адрес:
    Санкт-Петербург
    Ну смотря для чего. У меня, например, арч - десктопная система. Второй осью стоит 10 винда. Но она чисто раз в полгода зайти пошпилиться в танки и раз в год открыть фотошоп по работе. Более мне винда как бы не нужна, поэтому и смысла запускать её, потом виртуалбокс, чтобы посидеть в привычном линуксе, нет.
    Пример, конечно, охватит малую часть населения. Но всё-таки такие есть)
    --- Добавлено ---
    А, про танки-то я уже и согрешил. Они у меня теперь на ляле :D
    Нативно ^^
    --- Добавлено ---
    А, мы наверн всё-таки не так друг друга поняли. Не круче. Каждый вариант просто под разные цели, да.
    Если есть дела на винде, а линукс просто как сервер, или потренироваться пользоваться реальным сервером, или просто привыкнуть, ну в общем ты понял, тогда виртуалбокс. А если винда и совсем не сдалась, как в моём случае, то она будет лишним фрагментом
     
  11. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    В общем, я просто оставлю это здесь. Вот так я работаю в линуксе :) А ты скажи, это ляльки или серьезно..
     
  12. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    854
    Симпатии:
    210
    Адрес:
    Санкт-Петербург
    Да, я знаю, как ты работаешь с лялей)
    И это прикольно. В кои-то веки свершилось.
    Но прям не мой вариант. Но я арчевод. Всё началось с того, что мне нужно было на капец какой слабый нетбук поставить хорошо работающую операционку. 7-ка висла. ХР уже даже на то время был устаревшим. Да и в принципе её глючности не позавидуешь. В итоге арч мне позволил собрать операционку, кушающую 100 метров оперативной памяти. Другого варианта просто не было. Ну, кроме как покупки нового ноута)
    Но у меня есть такая возможность. У меня нет инструментов, которые работают только под виндой. Поэтому я довольно легко отказался от неё. Но если такие инструменты есть - полный переход, конечно, не вариант. Тогда твой случай будет прям идеальным.
    Хотя чего я, сейчас прям почти каждому нужна винда. Я может и вообще один такой :(
     
  13. Evgen219r

    Evgen219r Новичок

    С нами с:
    19 мар 2017
    Сообщения:
    11
    Симпатии:
    0
    Эку вы баталию вы развернули)) Отвлекаясь от темы, можно не VirtualBox поставить тогда уж, а ESXi или ProxMox. От винды бы давно отказался, если бы по работе не нужна была.

    Такой вопрос появился. Почему-то при той настройке, что сделал, как Fell-x27 посоветовал, у меня перестала работать перестала работать переадрессация.
    В .httaccess:
    Код (Text):
    1. RewriteEngine on
    2. RewriteRule .* index.php [L]
    Если без настройки отладки (на другом компе), то всё работает. Подозреваю, что связано с тем, что проект на чистом компе открывается по ссылке: http://boardway/, а на том, где отладка включена по ссылке: http://localhost:63342/Boardway/

    Это баг или фича?
     
  14. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Ды любую виртуалку можно, которая держит честную паравиртуализацию, и с которой можешь работать.
    Это ты что-то криво поднастроил. У меня в ссылках нигде вообще не всплывает localhost. У сервера в подсети свой собственный ip, 192.168.1.37 в конкретном случае. Он имеет прямой линк на роутер. И никак не связан с 127.0.0.1 хост-машины. Все запросы на test.dev/, приходящие на роутер резолвятся в 192.168.1.37/. В переменных сервера при обработке запроса прописано именно доменное имя, все как в настоящих интернетах.
    А зачем тебе два компа дома, где на одном есть отладка, на другом нет, да еще и адреса разные? Чот ты намудрил, скажу я тебе.

    У меня есть дома одна локальная машина виртуальная. Там сервак и окружение для разработки. Если надо выключить xDebug, то это делается через конфиги - достаточно закомментить одну строку и ребутнуть пхп-машину. Сервак при этом доступен любому устройству в домашней сети. Включая его самого. Можно с него стучаться не на локалхосты, а по доменному имени и все будет работать.
     
  15. Evgen219r

    Evgen219r Новичок

    С нами с:
    19 мар 2017
    Сообщения:
    11
    Симпатии:
    0
    Тоже склоняюсь к этому. Но делал всё по инструкции

    С отладкой это сервак контрагента. А дома поставил в порядке эксперимента, когда заподозрил, что что-то не так из-за настройки
     
  16. Evgen219r

    Evgen219r Новичок

    С нами с:
    19 мар 2017
    Сообщения:
    11
    Симпатии:
    0
    А может я неверно запускаю? Я жму на значок браузера. Всё верно?
     
  17. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Неверно запускаешь что? Если все настроено правильно, то сервер доступен отовсюду из-под роутера, с любого девайса с любого браузера как обычный сайт.
     
  18. Evgen219r

    Evgen219r Новичок

    С нами с:
    19 мар 2017
    Сообщения:
    11
    Симпатии:
    0
    Откуда ноги растут я понял, но вот как поправить не разобрался. Префикс добавляет встроенный сервер шторма
     
  19. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    В чем проблем юзать нормальный сервер? :)
     
  20. Evgen219r

    Evgen219r Новичок

    С нами с:
    19 мар 2017
    Сообщения:
    11
    Симпатии:
    0
    А чтоб я знал, как его научить не лезть на свой) Над тем и бьюсь
     
  21. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    О_О Ты явно что-то делаешь крайне не так. Откуда ты такие проблемы берешь? Ты скрипты в шторме стартуешь чтоль, напямую? Почему бы просто в шторме не открыть скрипты для редактирования, а для их проверки не открывать их браузером? Чтобы шторм был только в ролик редактора.
     
  22. Evgen219r

    Evgen219r Новичок

    С нами с:
    19 мар 2017
    Сообщения:
    11
    Симпатии:
    0
    Я великий мастер находить проблемы)))
    Ага, на код навожусь и значок браузера тычу. Значит я правильно заподозрил, что я в этом не прав? Сейчас проверю
    --- Добавлено ---
    Ну да. Сам себе проблемы создал на ровном месте)
     
  23. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Ты же пишешь код, с которым конечный пользователь будет взаимодействовать через свой браузер, заходя на сервер по адресу. Как на обычный сайт. Ну так и сам взаимодействуй с проектом через тот же "интерфейс", что и пользователь. А то потом окажется, что без phpStorm не будешь знать, как сайт поднять)
     
  24. Evgen219r

    Evgen219r Новичок

    С нами с:
    19 мар 2017
    Сообщения:
    11
    Симпатии:
    0
    Отладка меня сбила. До того как о ней задумался, так и делал
     
  25. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Отладчик, слушающий порт, будет прекрасно работать с вызовом скрипта откуда бы то ни было ;) В этом его офигенская крутизна заключается.