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

В этом руководстве я расскажу, как развернуть приложение Laravel с вашего локального компьютера на Heroku, а также связать его с GitHub.

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

  1. Базовые знания PHP и Laravel
  2. Аккаунт GitHub с установленным Git в вашей системе
  3. Учетная запись Heroku с установленным в вашей системе Heroku CLI

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

Чтобы наше приложение было развернуто на Heroku, мы выполним следующие шаги:

Шаг 1. В терминале инициализируйте репозиторий git в корневом каталоге рабочего каталога вашего проекта с помощью команды git init.

Шаг 2: Кроме того, в терминале создайте приложение Heroku с помощью команды heroku create heroku create [your_application_name] , где «your_application_name» - предпочтительное имя, вы хочу назвать свое приложение.

NB: Heroku автоматически генерирует для нас имя приложения, если имя приложения не указано при использовании команды heroku create.

«Шаг 2, описанный выше, также можно выполнить с панели инструментов heroku, как показано на скриншоте ниже»

Шаг 3. Перейдите на панель управления heroku, нажмите вкладку Настройки вашего приложения, скопируйте URL-адрес Git для вашего проекта, обычно в формате

https://git.heroku.com/your_application_name.git

Шаг 4: Добавьте этот URL-адрес, который вы только что скопировали в свой проект из терминала, с помощью команды git remote add heroku [your_application_git_url].

Шаг 5: Heroku требует, чтобы у всего PHP был файл Procfile. Таким образом, создайте файл с именем Procfile (без расширения) в корневом каталоге вашего проекта и добавьте следующую строку кода в только что созданный файл Procfile: web: vendor/bin/heroku-php-apache2 public/.

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

echo ”web: vendor/bin/heroku-php-apache2 public/”>Procfile

Шаг 6: Теперь зафиксируйте изменения в git и отправьте на heroku с помощью команды: git push heroku master

Шаг 7: Наконец, скопируйте APP_KEY из своего .env file, затем перейдите к своему герою, откройте приложение и перейдите в: Настройки - ›Показать конфигурационные переменные. Здесь вы добавите новые значения пары ключей, например APP_KEY: base64: XXXX…

Ура, переход по адресу нашего приложения https://your_application_url.herokuapp.com, мы должны увидеть, что наше приложение работает.

Heroku, являющийся защищенным сервером, работает по https. Если в нашем приложении мы использовали функцию asset() для включения файлов статики в общую папку, это не будет работать, если мы не заменим функцию asset() на secure_asset() или не укажем нашему приложению, какой из них использовать на основе на окружающую среду. Мы делаем это, добавляя следующие строки кода в appServeiceProvider.php файл. В функции boot().

public function boot()
{
  //uncomment this when on a live server with https enabled
  if(config(‘app.env’) === ‘production’) {
\URL::forceScheme(‘https’);
  }
}

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

При необходимости также можно настроить переменные среды, которые можно сравнить с вашим локальным файлом .env. Это можно сделать через терминал с помощью команды heroku
heroku config:set VAR_NAME=VAR_VALUE

Или на панели управления heroku, щелкнув вкладку «Настройки» и затем Показать переменные конфигурации, как показано ниже.

Как настроить базу данных (MySQL) для приложения Laravel Heroku

Heroku предоставляет нам возможность выбрать предпочтительный механизм базы данных для нашего приложения. PostgreSQL предоставляется по умолчанию, но в нашем приложении мы собираемся использовать базу данных MySQL в качестве движка базы данных, а также будем использовать самые популярные сторонние базы данных MySQL в качестве поставщика услуг под названием ClearDB для нашего приложения.

Для начала мы должны установить это стороннее дополнение (C LearD B) в наше приложение.

Установка и настройка завершены здесь, в углу Виввы.

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