0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p>Из этой статьи вы узнаете, как задеплоить проект Laravel на Heroku - облачной платформе для развёртывания, управления и масштабирования проектов.</p>
1
<p>Из этой статьи вы узнаете, как задеплоить проект Laravel на Heroku - облачной платформе для развёртывания, управления и масштабирования проектов.</p>
2
<h2>Содержание</h2>
2
<h2>Содержание</h2>
3
<ul><li><a>Что понадобится для работы</a></li>
3
<ul><li><a>Что понадобится для работы</a></li>
4
<li><a>Шаг 2: создайте Procfile</a></li>
4
<li><a>Шаг 2: создайте Procfile</a></li>
5
<li><a>Шаг 3: создайте новое приложение на Heroku</a></li>
5
<li><a>Шаг 3: создайте новое приложение на Heroku</a></li>
6
<li><a>Шаг 4: подключите Node.js</a></li>
6
<li><a>Шаг 4: подключите Node.js</a></li>
7
<li><a>Шаг 5: настройте ключ шифрования Laravel</a></li>
7
<li><a>Шаг 5: настройте ключ шифрования Laravel</a></li>
8
<li><a>Шаг 6: отправьте приложение на Heroku</a></li>
8
<li><a>Шаг 6: отправьте приложение на Heroku</a></li>
9
<li><a>Шаг 7: убедитесь, что приложение использует правильные пакеты сборки</a></li>
9
<li><a>Шаг 7: убедитесь, что приложение использует правильные пакеты сборки</a></li>
10
<li><a>Шаг 8: проверьте доступность приложения</a></li>
10
<li><a>Шаг 8: проверьте доступность приложения</a></li>
11
</ul><h2>Что понадобится для работы</h2>
11
</ul><h2>Что понадобится для работы</h2>
12
<ul><li>Знания PHP и Laravel</li>
12
<ul><li>Знания PHP и Laravel</li>
13
<li>Аккаунт на Heroku</li>
13
<li>Аккаунт на Heroku</li>
14
<li>Heroku CLI (можно загрузить<a>здесь</a>)</li>
14
<li>Heroku CLI (можно загрузить<a>здесь</a>)</li>
15
<li>Git (инструкция по установке<a>здесь</a>)</li>
15
<li>Git (инструкция по установке<a>здесь</a>)</li>
16
</ul><p>Предполагается, что у вас есть приложение на Laravel, которое работает на локальном сервере и готово к развёртыванию.</p>
16
</ul><p>Предполагается, что у вас есть приложение на Laravel, которое работает на локальном сервере и готово к развёртыванию.</p>
17
<h3>Шаг 1: инициализируйте Git</h3>
17
<h3>Шаг 1: инициализируйте Git</h3>
18
<p>Инициализируйте git-репозиторий в текущей рабочей директории. Используйте такую команду:</p>
18
<p>Инициализируйте git-репозиторий в текущей рабочей директории. Используйте такую команду:</p>
19
<blockquote><p><strong>Внимание: если вы не умеете работать с Git, пройдите бесплатный<a>курс по системам контроля версий</a>.</strong></p>
19
<blockquote><p><strong>Внимание: если вы не умеете работать с Git, пройдите бесплатный<a>курс по системам контроля версий</a>.</strong></p>
20
</blockquote><h2>Шаг 2: создайте Procfile</h2>
20
</blockquote><h2>Шаг 2: создайте Procfile</h2>
21
<p>В рабочей директории создайте Procfile без расширения и добавьте в него такую строку:</p>
21
<p>В рабочей директории создайте Procfile без расширения и добавьте в него такую строку:</p>
22
<p>web: vendor/bin/heroku-php-apache2 public/</p>
22
<p>web: vendor/bin/heroku-php-apache2 public/</p>
23
<p>Также Procfile можно создать и обновлять через терминал. Для этого понадобится следующая команда:</p>
23
<p>Также Procfile можно создать и обновлять через терминал. Для этого понадобится следующая команда:</p>
24
<h2>Шаг 3: создайте новое приложение на Heroku</h2>
24
<h2>Шаг 3: создайте новое приложение на Heroku</h2>
25
<p>Это можно сделать с помощью команды:</p>
25
<p>Это можно сделать с помощью команды:</p>
26
<p>В этом случае для вашего проекта устанавливается рандомное название. Чтобы его изменить, используйте следующую команду:</p>
26
<p>В этом случае для вашего проекта устанавливается рандомное название. Чтобы его изменить, используйте следующую команду:</p>
27
<p>Вместо<em>newAppName</em>укажите желаемое название проекта.</p>
27
<p>Вместо<em>newAppName</em>укажите желаемое название проекта.</p>
28
<h2>Шаг 4: подключите Node.js</h2>
28
<h2>Шаг 4: подключите Node.js</h2>
29
<p>Node.js понадобится для работы с командами<em>npm install</em>,<em>npm production</em>и так далее. Добавьте в проект пакет<em>heroku/nodejs</em>с помощью команды:</p>
29
<p>Node.js понадобится для работы с командами<em>npm install</em>,<em>npm production</em>и так далее. Добавьте в проект пакет<em>heroku/nodejs</em>с помощью команды:</p>
30
<p>После этого все зависимости, указанные в<em>package.json</em>, будут установлены при развёртывании проекта, а<em>devDependencies</em>будут проигнорированы.</p>
30
<p>После этого все зависимости, указанные в<em>package.json</em>, будут установлены при развёртывании проекта, а<em>devDependencies</em>будут проигнорированы.</p>
31
<p>Чтобы устанавливать все зависимости, включая<em>dev</em>, используйте такую команду:</p>
31
<p>Чтобы устанавливать все зависимости, включая<em>dev</em>, используйте такую команду:</p>
32
<p>Затем добавьте heroku-postbuild в package.json в секцию scripts:</p>
32
<p>Затем добавьте heroku-postbuild в package.json в секцию scripts:</p>
33
<h2>Шаг 5: настройте ключ шифрования Laravel</h2>
33
<h2>Шаг 5: настройте ключ шифрования Laravel</h2>
34
<p>Чтобы настроить ключ шифрования, скопируйте значение<em>APP_KEY</em>из файла<em>.env</em>и выполните указанную ниже команду:</p>
34
<p>Чтобы настроить ключ шифрования, скопируйте значение<em>APP_KEY</em>из файла<em>.env</em>и выполните указанную ниже команду:</p>
35
<p>А с помощью предложенной далее команды можно сгенерировать и установить новый ключ шифрования.</p>
35
<p>А с помощью предложенной далее команды можно сгенерировать и установить новый ключ шифрования.</p>
36
<h2>Шаг 6: отправьте приложение на Heroku</h2>
36
<h2>Шаг 6: отправьте приложение на Heroku</h2>
37
<p>Запушить приложение на Heroku можно с помощью такой команды:</p>
37
<p>Запушить приложение на Heroku можно с помощью такой команды:</p>
38
<h2>Шаг 7: убедитесь, что приложение использует правильные пакеты сборки</h2>
38
<h2>Шаг 7: убедитесь, что приложение использует правильные пакеты сборки</h2>
39
<p>Для этого используйте предложенную команду:</p>
39
<p>Для этого используйте предложенную команду:</p>
40
<p>Если в списке пакетов есть<em>heroku/php</em>и<em>heroku/nodejs</em>, всё в порядке. Если какого-то из пакетов нет, запустите такую команду:</p>
40
<p>Если в списке пакетов есть<em>heroku/php</em>и<em>heroku/nodejs</em>, всё в порядке. Если какого-то из пакетов нет, запустите такую команду:</p>
41
<p>Вместо<em>[‘missing build’]</em>укажите название пакета, который нужно добавить.</p>
41
<p>Вместо<em>[‘missing build’]</em>укажите название пакета, который нужно добавить.</p>
42
<h2>Шаг 8: проверьте доступность приложения</h2>
42
<h2>Шаг 8: проверьте доступность приложения</h2>
43
<p>Для этого введите в адресную строку браузера соответствующий URL.</p>
43
<p>Для этого введите в адресную строку браузера соответствующий URL.</p>
44
<p>Чтобы установить переменные окружения, воспользуйтесь командой:</p>
44
<p>Чтобы установить переменные окружения, воспользуйтесь командой:</p>
45
<p>Также можно использовать панель инструментов. На вкладке Settings выберите Reveal config vars. Здесь можно просмотреть и настроить переменные окружения.</p>
45
<p>Также можно использовать панель инструментов. На вкладке Settings выберите Reveal config vars. Здесь можно просмотреть и настроить переменные окружения.</p>
46
<p>Heroku позволяет бесплатно использовать PostgreSQL. Для этого понадобится такая команда:</p>
46
<p>Heroku позволяет бесплатно использовать PostgreSQL. Для этого понадобится такая команда:</p>
47
<p>На панели инструментов в настройках укажите для<em>DB_CONNECTION</em>значение<em>pgsql</em>. Выберите Reveal config vars, чтобы проверить переменные окружения.</p>
47
<p>На панели инструментов в настройках укажите для<em>DB_CONNECTION</em>значение<em>pgsql</em>. Выберите Reveal config vars, чтобы проверить переменные окружения.</p>
48
<p>Чтобы получить учётные данные БД приложения, выберите аддон Heroku Postgres Hobby Dev на вкладке Overview панели инструментов. После этого откроется новая вкладка в браузере. Учётные данные БД можно найти на вкладке "Настройки".</p>
48
<p>Чтобы получить учётные данные БД приложения, выберите аддон Heroku Postgres Hobby Dev на вкладке Overview панели инструментов. После этого откроется новая вкладка в браузере. Учётные данные БД можно найти на вкладке "Настройки".</p>
49
<p>Обратите внимание, чтобы использовать команды<em>artisan</em>или<em>npm</em>на Heroku, перед всеми командами запускайте<em>heroku run</em>. Например,<em>heroku run php artisan storage</em></p>
49
<p>Обратите внимание, чтобы использовать команды<em>artisan</em>или<em>npm</em>на Heroku, перед всеми командами запускайте<em>heroku run</em>. Например,<em>heroku run php artisan storage</em></p>
50
<p>или<em>heroku run npm install</em>.</p>
50
<p>или<em>heroku run npm install</em>.</p>
51
<p><em>Адаптированный перевод статьи<a>How to deploy a Laravel/Vue App to Heroku</a>by Chinedu Ogama. Мнение администрации Хекслета может не совпадать с мнением автора оригинальной публикации.</em></p>
51
<p><em>Адаптированный перевод статьи<a>How to deploy a Laravel/Vue App to Heroku</a>by Chinedu Ogama. Мнение администрации Хекслета может не совпадать с мнением автора оригинальной публикации.</em></p>