Меню

Phpstorm где хранит настройки



Деплой PHP-приложений с помощью PhpStorm

Это руководство описывает, как начать развёртывание PHP-приложений с помощью IDE PhpStorm. Ты увидишь, что такое деплой и как просто его настроить в PhpStorm. Деплой или развёртывание — это процесс перемещения кода из песочницы разработчика на реальный сервер.

Мой дорогой друг, при разработке приложений с помощью PhpStorm, скорее всего, ты следуешь одному из следующих путей:

  • Веб-сервер установлен на локальном компьютере. Исходники PhpStorm проекта находятся в корневом каталоге документов сервера. По сути, разработка происходит на веб-сервере.
  • Веб-сервер установлен на локальном компьютере. Исходники PhpStorm проекта находятся не в корневом каталоге документов сервера, а в любом другом. Разработка происходит в PhpStorm, файлы копируются в корневой каталог документов сервера для тестирования.
  • Веб-сервер установлен на другом компьютере. Исходники PhpStorm проекта хранятся на локальном компьютере. Разработка происходит в PhpStorm, файлы копируются в корневой каталог документов на сервер посредством FTP, SFTP, FTPS или с помощью общего сетевого ресурса.

Обрати внимание, другие конфигурации тоже возможны, но это самые распространённые.

В любом возможном варианте PhpStorm отличает проект от сервера. Для работы с сервером (например, для копирования или синхронизации файлов) должен быть настроен сервер развёртывания. Давай рассмотрим этот процесс подробнее, шаг за шагом.

1. Необходимые условия

Перед тем как произвести какой-либо из видов развёртывания, убедись, что соединение между локальным компьютером и удалённым хостом доступно с помощью FTP, SFTP, FTPS или имеется доступ к общим файлам.

Все действия, описанные здесь, были воспроизведены с корректными ожидаемыми результатами при следующем технологическом окружении:

2. Настройка сервера развёртывания

2.1. Создание сервера развёртывания

Создание сервера развёртывания может быть осуществлено через следующие пункты главного меню IDE: [File → Settings → Build, Execution, Deployment → Deployment] или [Tools → Deployment → Configuration] . При нажатии на кнопку с зелёным плюсиком на панели инструментов можно добавить новый веб-сервер.

Дай серверу имя и выбери его тип. Это может быть любой из следующих:

  • FTP — подключение к серверу развёртывания с помощью FTP.
  • SFTP — подключение к серверу развёртывания с помощью SFTP.
  • FTPS — подключение к серверу развёртывания с помощью FTPS.
  • Local or mounted folder (локальная или примонтированная папка) — корневая директория документов сервера развёртывания. Является доступной как локальная папка на компьютере или в виде подсоединённой папки на удалённом компьютере.
  • In place (на месте) — проект PhpStorm находится в корневой директории локального веб-сервера.

Нажми кнопку OK , чтобы добавить сервер развёртывания.

Когда сервер развёртывания создаётся и настраивается в каком-либо проекте, то он и детали его подключения становятся глобальными и доступными для любого проекта открытого в PhpStorm, а параметры вкладок Mappings (отображения) и Excluded Paths (исключаемые пути) являются настройками каждого конкретного проекта. Таким образом, несколько проектов могут использовать один и тот же сервер развёртывания без необходимости настройки подключения для каждого из них в отдельности.

2.2. Настройка подключения

Теперь на вкладке Connections (подключения) ты должен указать сведения о соединении. В зависимости от типа сервера, выбранного ранее, эти параметры будут отличаться.

Но один параметр является общим для всех типов соединений — это корневой URL-адрес веб-сервера. Обычно им выступает URL-адрес до корневого каталога документов сервера.

Далее, мой друг, рассмотрим подробно параметры каждого типа соединения.

2.2.1. FTP, FTPS, SFTP

Для FTP, FTPS и SFTP конфигурации соединений более или менее похожи. Ты должен указать имя хоста, порт, корневой путь (путь на удалённом сервере, который будет использоваться в качестве корня) и учётные данные.

Кнопку Advanced options. (расширенные опции) можно использовать для настройки дополнительных параметров подключения. Обычно в этом нет необходимости, но если, например, требуется пассивный режим или ограничение на количество одновременных соединений, то эти параметры могут быть определены.

Используя кнопку Test FTP connection. , ты сможешь проверить корректность введённых ранее параметров. Ниже представлен результат успешной проверки.

2.2.2. Локальная или примонтированная папка

Для локальной или примонтированной папки ты должен указать путь, куда файлы проекта должны быть развёрнуты.

2.2.3. На месте (локальный веб-сервер)

Для подключения данного типа ты должен указать только корневой URL-адрес веб-сервера. Причина этого в том, что корневой каталог документов локального веб-сервера отображается в корне проекта твоей IDE — нет необходимости передавать такие файлы проекта куда-либо.

2.3. Настройка отображений

Отображение — это отношение между папками проекта, папками на сервере для копирования файлов проекта и URL-адресами для доступа к данным на сервере через HTTP. Эти сопоставления используются, чтобы помочь PhpStorm найти файл или папку в нашем проекте или на удалённом сервере.

Читайте также:  Postal 2 настройка графики

Самый простой способ — отобразить всю корневую директорию проекта в корневой каталог документов сервера, где структура их папок будет идентична. На скриншоте ниже указано следующее соотношение:

Local Path
(локальный путь)
Deployment Path
(путь развёртки, например, на FTP сервере)
Web Path
(URL-адрес — веб-путь)
C:\OpenServer\domains\vpawd.lc / /

В зависимости от конфигурации сервера и планировки проекта возможно указать не одно, а несколько отображений на вкладке Mappings . Например, фреймворки Phalcon, Symfony2, Zend FrameWork, Laravel или CakePHP, как правило, используют 2 основные папки:

  • application — содержит контроллеры и код приложений;
  • public — соответствует корневой директории документов сервера и обычно содержит JavaScript, CSS и т.д.

Такой тип приложений может быть отображён следующим образом:

Local Path
(локальный путь)
Deployment Path
(путь развёртки, например, на FTP сервере)
Web Path
(URL-адрес — веб-путь)
C:\OpenServer\domains\vpawd.lc\application /application
C:\OpenServer\domains\vpawd.lc\public /public /

На скриншоте выше для каталога application предупреждение показано потому, что не указан Web Path (веб-путь), но для настройки данного типа приложений это нормально. Также стоит отметить, что когда у нескольких папок будут одинаковые соотношения, то применяться будет только первое.

2.4. Установка сервера по умолчанию *

Если ты используешь только один сервер развёртывания для многих проектов (часто так и бывает), имеет смысл установить его в качестве сервера по умолчанию. В окне Deployment на вкладке Mappings с использованием кнопки Use this server as default можно установить сервер по умолчанию для проекта.

2.5. Настройка исключаемых путей *

Иногда имеются пути, которые не должны быть скачаны с сервера в локальный проект или загружены на сервер при выполнении деплоя, например, директория с лог-файлами или директория, содержащая кэшированные данные шаблонов Smarty. Эти пути могут быть легко исключены на вкладке Excluded Paths .

3. Исследование сервера

После настройки сервера развёртывания ты можешь просматривать удалённый сервер с помощью пункта главного меню [Tools → Deployment → Browse Remote Host] . Он откроет новое окно инструментов в PhpStorm, в нём можно работать с удалёнными каталогами и файлами.

В приведённом выше скриншоте некоторые файлы и директории будут отображаться на зелёном фоне — они имеют право находиться в твоём локальном проекте. Это выделение зелёным цветом основано на правилах сопоставления из вкладки Mappings , созданных ранее.

Ты можешь перемещаться между соответствующими локальными и удалёнными каталогами с помощью сочетания клавиш Alt + F1 .

4. Деплой файлов на сервер

Деплой файлов на сервер может быть выполнен несколькими способами. Проще всего выбрать проект, папку или отдельный файл в панели Project . Затем с помощью опции контекстного меню [Deployment → Upload to [server name]] или [Deployment → Upload to. ] (если сервер по умолчанию не установлен) загрузить выделение на удалённый сервер. Также ты можешь использовать главное меню [Tools → Deployment → . ] для выбора необходимой операции развёртывания.

Ты сможешь видеть прогресс в окне File Transfer , которое откроется само.

Скачивание файлов работает аналогичным образом. Ты можешь использовать контекстное меню в окне инструмента Remote Host и опцию загрузки.

5. Перетаскивание файлов между сервером и проектом *

PhpStorm поддерживает режим перетаскивания — операции копирования и перемещения данных между панелью Project и окном инструмента Remote Host . Для использования указанного режима открой окно инструмента Remote Host с помощью главного меню [Tools → Deployment → Browse Remote Host] . Файлы и папки могут быть скопированы или перемещены от и к серверу развёртывания с помощью перетаскивания. Эта функция ведёт себя подобно функции в проводнике на твоём компьютере: по умолчанию элемент будет перемещён. Если при перетаскивании удерживается клавиша Ctrl , то файл будет скопирован. На скриншоте ниже происходит копирование файла favicon.ico из проекта на удалённый сервер.

Перетягивание удобно использовать для изучения папки на сервере, не имеющей правил сопоставления, указываемых на вкладке Mappings .

Более углубленный материал о синхронизации и деплое приложений ты можешь найти в следующей статье: Синхронизация изменений и автоматическая загрузка на сервер развёртывания в PhpStorm.

Пункт является опциональным при изучении руководства: Деплой PHP-приложений с помощью PhpStorm.

Источник

Как загружать, редактировать, синхронизировать файлы по FTP в PHPStorm

В этой статье я расскажу о том, как в PHPStorm настраивать FPT/SFTP-подключения для работы с файлами на удалённом сервере. После прочтения этой статьи вы будете знать, как в PHPStorm работает загрузка файлов на сервер. Как добавить несколько FTP-подключений и одновременно загружать файлы на все настроенные сервера.

Читайте также:  Eltex tau 8 ip настройка ims

Для чего это нужно

Очень часто так бывает, что вы разрабатываете проект локально, и после приобретения проектом лицеприятного вида появляется необходимость в публикации этого сайта на хостинге, или личном сервере. Допустимый вариант — использовать фтп-менеджер, по типу FileZilla, WinSCP, или им подобные. И с их помощью загружать файлы на сервер, как только вы закончите работу. Однако, во-первых, иногда очень напрягает постоянные переключение между вкладками, особенно, когда правки происходят в режиме лайф. И, во-вторых, PHPStorm имеет встроенный функционал по работе с удалёнными серверами, и, во-многом, мощнее большинства файловых менеджеров.

Благодаря PHPStorm-у теперь можно настроить подключения к удалённому серверу, настроить автоматическую загрузку файлов и их синхронизацию, можно редактировать удалённый файлы по FTP прямо из любимой IDE. В общем, что только не делают разработчики IDE, только бы мы писали качественный код. Потому, преимущества использования встроенных инструментов, по сравнению с FileZilla и компанией — есть.

Настройка FTP-подключения в PHPStorm

Для демонстрации процесса настройки FTP в PHPStorm я создам новый проект, а так же, создам новый дроплет на DigitalOcean, на который буду загружать файлы проекта.

Прежде всего, нужно настроить FTP соединение с удалённым сервером. Для этого нужно перейти в меню настроек File > Settings , где открыть вкладку Build, Execution, Deployment > Deployment , и нажать на кнопку добавления нового подключения:

Где во всплывающем меню будет предложено выбрать тип подключения, который мы будем использовать: FTP , FTPS , SFTP :

Какую опцию выбирать зависит от того, куда вы подключаетесь. Грубо говоря, если у вас собственный сервер, и к примеру, вы хотите подключиться от имени root-а, или другого пользователя на сервере, то нужно выбрать SFTP .
Если вы подключаетесь к shared-хостингу, то они обычно предоставляют доступ только по FTP .

После чего нам будет предложено указать имя сервера. Это имя ни на что не влияет, нужно только для удобства. Но я бы советовал давать имена серверам осознанно, например badocode.ru , PROD_server , _dev_server , .

И указав имя, получим такое окно с настройками, на котором остановимся подробнее:

где 1 — это опция, которая указывает на то, будет ли доступен этот сервер в других ваших PHPStorm-проектах. То есть, вы можете настроить это подключение один раз, и выставив эту галочку, работать в любом своём проекте, не настраивая его повторно в других проектах
2 — тип подключения, который указывали шагом назад (который можем изменить в любой момент)
3 — хост, к которому подключаемся
4 — порт сервера (для SFTP обычно 22, но на сервере можно настроить какой угодно)
5 — имя пользователя
6 — пароль (и галочка сохранить пароль, чтобы не вводить его повторно)

После того, как указали все параметры, нужно протестировать это подключение на корректность введённых данных, нажав на кнопку Test Connection (соглашаясь со всеми всплывающими окнами).

В результате чего, должны получить сообщение об успешной проверке

Теперь осталось только настроить пути к проекту, папку выгрузки на сервер. Здесь нужно указать, в какой директории на сервере находятся файлы вашего проекта. К примеру, на VDS, файлы, обычно расположены по пути /var/www/html , если это хостинг, то username/public_html , public_html , или что-то типа того. Потому укажем путь, нажав на кнопку:

Теперь, последний шаг для удачного деплоя — укажем путь, куда будут загружаться файлы. Для этого нужно перейти на вкладку Mappings и выбрать путь Deployment path (обычно, при указанном пути к проекту на предыдущей вкладке, Deployment path задаётся как / ).

Если вы хотите, чтобы на удалённый сервер заливался проект, без определённых папок/файлов, то можете указать исключения на вкладке Excluded Paths , какие папки/файлы будут игнорироваться при деплое.

Готово! Нажимаем OK , и сервер добавлен.

Подключаемся к настроенному серверу

Подключение мы настроили. Но пока непонятно, как к нему подключиться. Для того, чтобы появилась удобная панель работы с FTP-серверами, откроем в меню Tools > Deployment > Browse Remote Host , в результате чего, появится новая панель Remote Host , которую можете открыть кликнув по ней

И всё, теперь мы полноценно настроили подключение по FTP, и можем из PHPStorm загружать, или редактировать файлов на удалённом сервере. Удобство в том, что можно перенести файлы на сервер либо выделив все нужные локальные файлы, скопировав Ctrl + C , перевести фокус на удалённый сервер, и Ctrl + V .
Или же, выделив нужные файлы, нажмите правую кнопку мыши, Deployment > Upload to .

Читайте также:  Тарифы и настройки на мотиве

Теперь в правом меню Remote Host , в списке файлов сервера появятся ваши файлы, которые вы можете открывать, и редактировать по фтп. И к примеру, если вы открыли файл, отредактировали его, то редактор сам подскажет вам, что в файле были произведены изменения, которые стоило бы залить на сервер. И для того, чтобы загрузить изменения на FTP сервер, нужно нажать на кнопку:

Как синхронизировать файлы по фтп с удалённым сервером

Теперь мы уже знаем, как можно добавлять и редактировать файлы в PHPStorm по FTP. Осталось только настроить проект таким образом, чтобы была возможность загружать файлы на сервер без подтверждения, без постоянных кликов на кнопку загрузки файлов. То есть, чтобы мы могли отредактировать файл локально, и он, в лайв режиме загрузился на сервер без дополнительных подтверждений с нашей стороны.

Для этого опять зайдём на страницу настроек File > Settings , настройки деплоя Build, Execution, Deployment > Deployment > Options

где 1 — режим загрузки файлов при их изменении:

  • Always — синхронизировать сразу же при изменении
  • On explicit save action — загрузка на сервере при нажатии Ctrl + S
  • Never — не синхронизировать

2 — режим поиска и разрешения конфликтов версий файлов:

  • No — загружать локальный файл на сервер без дополнительных проверок
  • Compare timestamp & size — сравнивать дату изменения локального файла с серверным, или его размер
  • Compare content — сравнивать содержимое файла с его предыдущей версией

То есть, когда PHPStorm обнаружит, что за то время, пока вы редактировали свой файл локально, его кто-то изменил на сервере. И, если настроено разрешение конфликтов версий файлов, то он уведомит вас о том, файл отредактирован кем-то, чтобы вы не затёрли чужие правки. Удобно, когда над проектом работает несколько человек.

Применив все настройки и отредактировав локальный файл, можем убедиться, что изменения на сервер были отправлены незамедлительно. И теперь вы знаете, как насроить лайв синхронизацию файлов с сервером в PHPStorm.

Загрузка файлов не несколько серверов одновременно (группа серверов)

Иногда возникает необходимость в загрузке файлы одновременно на несколько удалённых серверов. И в этом PHPStorm нам может здорово помочь. Для того, чтобы из PHPStorm-а деплоить файлы на несколько серверов, нам нужно создать группу серверов для деплоя.

Для того, чтобы создать такую группу серверов, откроем панель File > Settings , и перейдём на вкладку Build, Execution, Deployment > Deployment , где нажмём на кнопку добавления нового сервера (как было в предыдущих шагах), только в этот раз выбираем опцию Server group

Во всплывающем окне укажем имя для этой группы серверов, после чего, можем начать добавление сколько угодно серверов в эту группу:

Я, для этих целей создал 2 новых сервера, чтобы продемонстрировать работу с несколькими серверами из PHPStorm. Я добавил их в текущую группу серверов, указав нужные данные для подключения, пути к проекту, и путь для деплоя (как в предыдущей секции статьи).

В итоге, группа из двух сервером выглядит так:

Теперь, когда всё настроено, можем выделить нужные файлы проекта, которые необходимо залить, нажать ПКМ, и в контекстном меню Deployment кликнуть Upload to . server group

Нажав на кнопку, запустится процесс деплоя на каждый из этих серверов. Если же, вам понадобится загрузить только на один сервер из этой группы, то в том же меню Deployment , можете выбрать Upload to. , во всплывающем окне, выбрав нужный сервер

На момент создания группы серверов у вам уже могут иметься добавленные сервера. Вы можете переместить их в группу, используя drag-n-drop.
Если в PHPStorm не работает drag-n-drop, то попробуйте, используя зажатую кнопку Alt .

Так же важно понимать, что относительно группы серверов так же работает автоматическая синхронизация файлов с вашим проектом (если она настроена).

Резюме

Теперь вы знаете, как в PHPStorm работать по FTP, как работает загрузка файлов одновременно на несколько серверов, как всё это настраивать и успешно применять в своей работе. В этой статье я, для демонстрации использовал демо-сервер, который заказывал на DigitalOcean. И если вам нужен дешевый и качественный сервер (топ за свои деньги), то приглашаю вас зарегистрироваться по инструкции из этой статьи, и получить дополнительные 50$ на использование их услуг.

Subscribe to Блог php программиста: статьи по PHP, JavaScript, MySql

Get the latest posts delivered right to your inbox

Источник

Adblock
detector