Яндекс.Практикум

Как настроить phpStorm и OpenServer

В веб-разработке есть два прекрасных инструмента: IDE для языка php от JetBrains phpStorm и сборка WAMP для Windows OpenServer. Однако в каждом из инструментов есть свои косяки и так...

В веб-разработке есть два прекрасных инструмента: IDE для языка php от JetBrains phpStorm и сборка WAMP для Windows OpenServer. Однако в каждом из инструментов есть свои косяки и так просто не получается их преодолеть.

Проблема из-за путей OpenServer

Часть этих косяков происходит от того, что в OpenServer применяется несколько версий серверов Apache и NGINX, несколько версий интерпретатора php, несколько версий баз данных MySQL. Для разработчика это в плюс, поскольку все настроено и работает, а значит не нужно ломать голову как самому это связать. Но с другой стороны получается нужно хранить несколько версий настроек и как-то их динамически подсовывать системе в соответствии с выбором пользователя.

В OpenServer настройки хранятся x:\OpenServer\userdata\config\, причем пути заменяются на специальные теги типа %sitedir%%progdir%. Из-за этого тупо указать эти файлы для настроек не получается, поскольку они просто не будут работать.

А «скомпилированные» для работы файлы хранятся x:\OpenServer\userdata\temp\config\. Вот только их опять же нельзя использовать, поскольку они при следующем запуске со сменой профиля будут переписаны. Да и php.ini должен лежать в корне папки интерпретатора, иначе все идет по умолчанию, что очень не хорошо.

А IDE phpStorm, да и не только она, требует указанию путей к php, его настройкам и так далее. Из-за этого не работает функционал работы с Composer,  консоль, xDebug.

В других сборках этой проблемы нет, потому что либо вы берете сборку с одной версией Apache, одной версией php и одной версией MySQL, либо файлы настроек хранятся там, где они должны быть.

Однако из-за этой особенности не стоит отказываться от такой замечательной сборки!

Решение проблемы путей «в лоб»

Решить проблему путей можно что называется «в лоб» и просто скопировать готовые фай php.ini в папку интерпретатора d:\OpenServer\modules\php\PHP-5.5\. Вот только при смене настроек, нужно будет править ОБА файла.

Так что этот путь есть, но он не слишком перспективный на мой взгляд.

Другое решение этой проблемы – руками внести изменения в пути переменной PATH для командной оболочки. Судя по документации, раньше был в x:\OpenServer\userdata\config\ файлик path.txt, где были прописаны эти пути и можно было его в настройках подключить. Сейчас его нет, так что можно попробовать его самостоятельно составить и подключить.

Но мне кажется, что этот путь тоже излишне прямолинеен и сложен.

Элегантное решение проблемы путей в OpenServer от «производителя»

Запуск phpStorm из меню OPenServer
Запуск phpStorm из меню OPenServer

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

Это включение phpStopm в меню OpenServer. Делается это очень просто: правая клавиша мыши на значке – Настройки – Закладки

Настройка меню OpenServer для запуска phpStorm
Настройка меню OpenServer для запуска phpStorm

Маленькая подсказка: в категорию забивайте свое название (я забил IDE) и автоматом создалась отдельная папка.

Точно так же, с Composer адекватно работать можно, только если запустить из контекстно меню OpenServer, поскольку ему требуется доступ к интернету по протоколу SSH, а по умолчанию это расширение работает только после настройки в php.ini.

А при работе с командным процессором Artisan, входящим в поставку Laravel, если запустить его через командную оболочку cmd через меню Пуск, то будут выведены сообщения об ошибках подключения к базе данных.

Но если делать запуск через выпадающее меню, то и Composer прекрасно работает, и в phpStorm работает Composer, Artisan и консоль.

Настройка phpStorm для работы с php

Но прописать вызов phpStorm в контекстном меню OpenServer лишь половина задачи. Теперь нужно прописать пути до php в самом phpStorm.

Для этого запускаем из контекстного меню OpenServer phpStorm и создаем проект, который вы хотите разрабатывать. Я не буду останавливаться на этом подробнее, тут ничего сложного нет.

Настройки в phpStorm
Настройки в phpStorm

Затем идете в верхнее меню File-Settings и в левой колонке ищите пункт php.

Настройки php в phpStorm
Настройки php в phpStorm

Тут определяете пункт со своей версией php в выпадающем списке, затем ниже нажимаете кнопку с точками для определения пути до интерпретатора.

Нажимаем плюсик в левом верхнем углу и вводите нужное имя, а затем ищем свой интерпретатор. Если все правильно сделано, то phpStorm проверит вашу версию и напишет версию и версию дебагера.

Настройка путей php в phpStorm
Настройка путей php в phpStorm

Вот теперь вы можете полностью использовать phpStorm с OpenServer

Понравилась статья? Поделиться с друзьями:
IPCalc Blog
Комментарии: 7
  1. grimm

    Спасибо вам за статью) если не трудно не могли бы ли вы уделить мне немног времени? думаю может вы сталкивались с этой проблемой(инет уже весь перерыл ниче не помогло): OpenServer 5.1.1 +PhpStorm 7.1.3 (8.0.3) выставляю возле Interpreter версию PHP-5.3(5.2) все находит и выставляется нормально но на версии 5.4(5.5) выводит PHP version: Not installed. В phpinfo подключена версия php 5.5 xdebug тоже подключен…в чем может быть причина? Спасибо!

    1. admin (автор)

      Как вы запускаете phpStorm? Если самостоятельно, то определяться пути, компилятор и так далее не будет. Только через менюшку. Если честно, я xDebug не использую — мне хватает стека Laravel. И вообще перешел на XAMPP.

      1. grimm

        Спасибо огромное) все наконец получилось…да туплю нереально уже чет…но все же так и не понял почему с версией php 5.3 все нормально а с 5.5 самостоятельно пути не находит вроде как все идентично как и с путями 5.3 но все же чет да не то…

  2. Николай

    Спасибо за статью. Раскажите как подружить phpstorm+open server+mysql. Нужно ли отдельно ставить mysql server. Как использовать mysql workbench

    1. admin (автор)

      mysql server в OpenServer уже встроен, его не нужно отдельно ставить и настраивать. А Workbench можно запустить легко: localhost, mysql/mysql и все. Я запускал так. Только он мне как-то не по руке пришелся. Я phpMyAdmin пользуюсь или HeidiSQL (они обе встроены уже в OPenServer)

  3. Олег

    Покажусь навязчивым, но просто вопрос по Laravel 5.2. При создании панели не могу добиться нормальной авторизации. Сбрасывает на страницу ввода логина и пароля. Миграции проведены таблицы в БД сформированы, в фасаде прописано. Не пересекались с такой проблемой?

    1. admin (автор)

      Нет, не сталкивался.

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: