dr.Brain

doctor Brain

мир глазами веб-разработчика

Laravel: Valet

устанавливаем и настраиваем Laravel Valet для MacOS

dr.Brain

время чтения 3 мин.

Photo by Rick Barrett on Unsplash

Laravel Valet является средой разработки для поклонников яблочной продукции и минимализма.

Valet использует сервер Nginx, который включается на устройстве с mac OS в фоновом режиме при запуске машины. С помощью DnsMasq Valet перенаправляет запросы на локальный домен *.test, предоставляя доступ к сайтам, установленным на рабочем компьютере.

Valet — это невероятно быстрая среда разработки Laravel, которой достаточно всего 7Мб оперативной памяти. Valet не является полной заменой Sail или Homestead, но представляет собой отличную альтернативу, в том случае когда разработчику нужны быстро настраиваемый базовый функционал и высокая скорость.

После установки Valet готов к работе со следующими фреймворками и решениями:

  1. Laravel
  2. Bedrock
  3. CakePHP 3
  4. ConcreteCMS
  5. Contao
  6. Craft
  7. Drupal
  8. ExpressionEngine
  9. Jigsaw
  10. Joomla
  11. Katana
  12. Kirby
  13. Magento
  14. OctoberCMS
  15. Sculpin
  16. Slim
  17. Statamic
  18. Symfony
  19. WordPress
  20. Zend
  21. Статические сайты

Функциональные возможности Valet можно расширить с помощью пользовательских драйверов.

Установка

Для установки Valet требуются mac OS и Homebrew. До начала установки необходимо убедиться, что никакие другие программы, в том числе Apache или Nginx, не занимают 80 порт локального компьютера.

В первую очередь нужно проверить актуальность установленной версии Homebrew:

brew update

Следующим шагом следует установить PHP с помощью Homebrew:

brew install php

После установки PHP необходимо установить менеджер пакетов Composer:

brew install composer

и добавить каталог $HOME/.composer/vendor/bin в переменную окружения PATH

export PATH="$HOME/.composer/vendor/bin:$PATH";

После установки Composer можно установить Laravel Valet как глобальный пакет Composer:

composer global require laravel/valet

Наконец, команда:

valet install

настроит и установит Valet и DnsMasq, а так же добавит в автозапуск демоны, от которых зависит корректная работа Valet

После установки Valet можно выполнить из командной строки ping любого домена *.test, например:

ping foobar.test

Если Valet установлен правильно, домен будет доступен по адресу 127.0.0.1.

Как указывалось ранее, Valet автоматически запускает необходимые службы при каждой загрузке компьютера.

Версия PHP

По умолчанию Valet использует единую глобальную версию PHP для всех сайтов. Однако, можно выбрать версию PHP для каждого сайта с помощью команды valet use php@version, например:

valet use php@8.2

При этом Valet установит указанную версию PHP с помощью Homebrew, если она не была установлена ранее.

Также в корне проекта можно создать файл .valetrc, содержащий информацию о версии PHP, используемой сайтом:

php=php@8.2

После создания файла .valetrc достаточно выполнить команду valet use, и она найдет нужную версию PHP для сайта.

Следует помнить, что одновременно Valet работает только с одной версией PHP.

Парковка сайтов

Для взаимодействия с сайтами Valet предоставляет две команды: park и link.

Команда park регистрирует указанный каталог как корневой, после чего все подкаталоги будут доступны в веб-браузере по адресу http://<directory-name>.test:. Например:

cd ~/Sites
 
valet park

Так, если припаркованный каталог содержит каталог с именем “laravel”, приложение в этом каталоге будет доступно по адресу http://laravel.test.

Команду linkтакже можно использовать для предоставления доступа к проектам Laravel. Эта команда полезна, когда требуется взаимодействие только с одним сайтом в каталоге, а не со всем каталогом:

cd ~/Sites/laravel
 
valet link

После того, как сайт привязан к Valet с помощью команды link, к нему можно получить доступ, используя имя каталога. Таким образом, сайт из вышеприведенного примера, будет доступен по адресу http://laravel.test.

Чтобы удалить каталог из списка припаркованных, нужна команда valet forget, которую потребуется запустить из припаркованного каталога

Просмотреть все припаркованные пути можно с помощью команды valet paths.

Защита сайтов с помощью TLS

По умолчанию Valet работает с сайтами по небезопасному протоколу HTTP. Однако, при необходимости с сайтами можно взаимодействовать по защищенному протоколу TLS с использованием HTTP/2. Для этго потребуется команда secure.

Например, если сайт с Valet доступен по адресу laravel.test, чтобы его защитить, нужно выполнить команду:

valet secure laravel

Чтобы «разблокировать» сайт и вернуться к протоколу HTTP, нужна команда unsecure, аргументом которой, как и для secure, является имя хоста:

valet unsecure laravel

Спасибо за внимание.

Новые публикации

Далее

Категории

О нас

Frontend & Backend. Статьи, обзоры, заметки, код, уроки.