Развёртывание сайта на Ларавель в интернете
Для чего статья?
Вот ты сделал на локалке сайт на Ларавеле и пришло время выложить его в интернеты, желательно малой кровью.
Но тут есть есть свои сложности. Код Ларавеля находится ниже публичной папки сайта. И тут встаёт первая проблема, ты же хотел просто на хостинг с виртуалкой выложить, а зачастую они не дают возможность править сайты ниже этой папки. Значит нам нужно какое-то другое решение.
Плюс тебе нужна работа с композером и миграциями, а для этого скорее всего придётся пинать хостера и учиться писать bash-скрипты.
После недолгих поисков вы наверняка натыкались на forge.laravel . На Ларакасте есть хорошие уроки по этой теме, но русскоязычного материала слишком мало. Я в своё время решил попробовать этот способ и в этой статье я расскажу про то как выложить сайт на Ларавеле через этот сервис.
Почему Фордж?
Какое-то время я изучал вопрос, спрашивал на форумах. Я хотел не самые тривиальные вещи, хотя ничего сверхъестественного: автодеплой, возможность работы с папкой ниже публичной, работу с композером и файлами окружения. То есть одним словом то, что предоставляет фордж. Плюс в этом сервисе много чего ещё удобного из коробки, например можно подключить бесплатный https за несколько кликов.
Но мне в нём не нравились цена (фордж 15$, digitalocean от 5$, совсем не 300 рублей за виртуалку). И то что он американский, это влечёт за собой проблемы. Во-первых, в языке и подходах, а также при оплате, например, DO не принимает дебетовые карты.
Другие разработчики, если что-то и предлагали, то это был набор где-то 5 или больше инструментов. Мне совсем не хотелось заниматься девопсом и я решил попробовать Фордж, тем более, что Джеффри Вей с Ларакастса просто души в нём не чает.
Подготовка
Ваш сайт должен быть целиком под контролем версий. Сейчас это негласное правило, но лучше лишний раз напомнить.
Также вам нужно заранее зарегистрироваться на https://forge.laravel.com и https://www.digitalocean.com и соответственно они должны быть активными, скорее всего на момент прочтения статьи там есть демо-периоды.
Шаг 1. Создаём сервер
Прямо из forge, я выбрал digitalocean. Кстати, на стороне последнего это называется droplet. На скрине настройки, которые я указывал.
Шаг 2. Создаём сайт
Также, никуда не выходя, не думаю, что к форме нужны пояснения.
После этого просто подтягиваем репозиторий.
Сайт готов, вы можете увидеть его по IP указанном у вас на странице вверху (не у меня на скрине).
Поправить переменные окружения можно на вкладке Environment. Я не буду показывать свои настройки из-за того, что там почти всё приватное, плюс вы должны знать как там всё выглядит. Главное не забудьте указать APP_ENV=production.
Шаг 3. Домен
Домен я покупал в России у обычного регистратора. На Ларакастсе показано как привязывать домен, но это не подходит под нашу действительность, где ты прописываешь днс у регистратор, а потом выполняешь необходимые настройки у хостера.
Но на деле процесс не отличался. У регистратора пропишите ns-сервера, а по этой кнопке увидите знакомые поля для настройки домена.
Шаг 4. Почта
Большой проблемой было настроить отправку почты.
Я использовал postfix, вот здесь есть хорошая статья, которой я пользовался, в итоге мне хватило её.
Https
Подключить https здесь невероятно легко. Просто кликаем на эту кнопку (на скрине ниже) и всё. И это ещё и бесплатно.
Вместо заключения
Я писал статью по памяти, поэтому что-то мог забыть. Если что-то осталось непонятным или я где-то ошибся, напишите, пожалуйста, в комментариях и я дополню статью. Также, если вы знаете другой способ, то я с радостью рассмотрю его.
Написать комментарий