Php artisan app name

Настройка

Этот перевод актуален для англоязычной документации на 28.01.2017 (ветка 5.3) , 08.12.2016 (ветка 5.2) и 08.02.2016 (ветка 5.0). Опечатка? Выдели и нажми Ctrl+Enter.

Данная статья документации актуальна для версий 5.3, 5.2 и 5.0, для версии 5.1 не актуальна.

Введение

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

После установки

Название вашего приложения

После установки Laravel вам может потребоваться «назвать» ваше приложение. По умолчанию каталог app находится в пространстве имён PHP App и автоматически загружается с помощью Composer по стандарту автозагрузки PSR-4. Но вы можете изменить пространство имён в соответствии с названием вашего приложения с помощью Artisan-команды sh app:name .

Например, если ваше приложение называется «Horsefly» , вы можете выполнить следующую команду в корне вашей инсталляции:

shphp artisan app:name Horsefly

Задание имени для вашего приложения вовсе не обязательно, и вы можете оставить пространство имён PHP App , если захотите.

Другие настройки

После установки Laravel нужно настроить самую малость. Вы можете сразу начинать разработку! Но если захотите, просмотрите файл config/app.php и его документацию. Он содержит несколько параметров, таких как timezone и locale , которые могут пригодиться для настройки вашего приложения в зависимости от вашего местоположения.

После установки Laravel вам также надо настроить вашу локальную среду.

Внимание: никогда не устанавливайте параметр app.debug в значение true для продакшна.

Права доступа

Для Laravel может потребоваться настроить один набор прав доступа: веб-серверу требуются права записи в папки, находящиеся в storage и vendor .

Настройки среды

Часто необходимо иметь разные значения для различных настроек в зависимости от среды, в которой выполняется приложение. Например, вы можете захотеть использовать разные драйвера кэша на локальном и продакшн-сервере.

Для этого в Laravel используется PHP-библиотека DotEnv от Ванса Лукаса. В свежей инсталляции Laravel в корне вашего приложения будет файл .env.example . Если вы установили Laravel с помощью Composer, этот файл будет автоматически переименован в .env , иначе вам следует сделать это вручную.

Читайте также:  Overrides method in object python

Также вы можете создать файл .env.testing . Этот файл переопределит значения файла .env при запуске тестов PHPUnit и при выполнении Artisan-команд с ключом sh —env=testing .

Чтение настроек среды

Все перечисленные в этом файле переменные будут загружены в супер-глобальную переменную PHP PHP $_ENV , когда ваше приложение получит запрос. Но вы можете использовать вспомогательную функцию PHP env () для получения значений этих переменных в ваших конфигурационных файлах. На самом деле, если вы заглянете в файлы настроек Laravel, то заметите несколько опций, уже использующих эту функцию:

 'debug' => env('APP_DEBUG', false),

Второе аргумент этой функции — значение по умолчанию. Оно будет использовано, если такой переменной среды нет.

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

Если вы работаете в команде, то, возможно, вам захочется и дальше поставлять файл .env.example с вашим приложением. Поместив примеры значений в этот файл, вы дадите понять другим разработчикам, какие переменные среды необходимы для запуска вашего приложения.

Определение текущей среды

Текущая среда приложения определяется по переменной PHP APP_ENV в файле .env . Вы можете получить это значение методом PHP environment () фасада App :

$environment = App::environment();

Также вы можете передавать аргументы в метод PHP environment () , чтобы проверить — совпадает ли имя среды с заданным значением. Метод вернёт PHP true , если среда совпадёт с любым из них:

 if (App::environment('local')) // Среда локальная (local) >

if (
App::environment('local', 'staging')) // Среда локальная (local) ИЛИ отладочная (staging). >

Экземпляр приложения также доступен через вспомогательный метод PHP app () :

$environment = app()->environment();

Вы можете получить имя текущей среды приложения с помощью метода PHP environment для экземпляра PHP Application :

$environment = $app->environment();

Также вы можете передавать аргументы в метод PHP environment () , чтобы проверить — совпадает ли имя среды с заданным значением. Метод вернёт PHP true , если среда совпадёт с любым из них:

 if ($app->environment('local')) 
// Среда локальная (local) >

if (
$app->environment('local', 'staging'))
// Среда локальная (local) ИЛИ отладочная (staging). >

Чтобы получить экземпляр приложения, выполните контракт Illuminate\Contracts\Foundation\Application с помощью сервис-контейнера. Конечно, когда вы находитесь внутри сервис-провайдера, экземпляр приложения доступен через переменную PHP $this -> app .

Экземпляр приложения также доступен через функцию PHP app () или фасад PHP App :

$environment = app()->environment(); 
$environment = App::environment();

Чтение значений настроек

Вы можете легко обращаться к значениям настроек с помощью глобальной вспомогательной функции PHP config () из любого места в вашем приложении. К значениям настроек можно обращаться, используя «точечный» синтаксис, в который входит имя файла и название опции. При этом можно указать значение по умолчанию, которое будет возвращено при отсутствии запрашиваемой опции:

Для задания значений настроек во время выполнения передайте массив в функцию PHP config () :

config(['app.timezone' => 'America/Chicago']);

Вы легко можете прочитать значения настроек, используя фасад PHP Config :

$value = Config::get('app.timezone'); 
Config::set('app.timezone', 'America/Chicago');

Вы также можете использовать вспомогательную функцию PHP config :

Кэширование настроек

Для повышения скорости работы вашего приложения вы можете кэшировать все файлы настроек в единый файл с помощью Artisan-команды sh config:cache . Она объединит все параметры настроек вашего приложения в единый файл, который будет быстро загружен фреймворком.

У вас должно войти в привычку запускать команду sh php artisan config:cache , как типичная часть разработки. Не стоит запускать эту команду в процессе локальной разработки, так как при этом часто требуется изменять параметры настроек.

Если вы выполняете команду sh config:cache во время процесса развёртывания, вы должны быть уверены, что вызываете функцию PHP env () только из ваших файлов настроек.

Режим обслуживания

Когда ваше приложение находится в режиме обслуживания (maintenance mode), специальный шаблон будет отображаться для всех запросов в вашем приложении. Это позволяет легко «отключать» приложение во время его обновления или при обслуживании. Проверка режима обслуживания включена в стандартный набор посредников для вашего приложения. Когда приложение находится в режиме обслуживания, будет вызвано исключение MaintenanceModeException с кодом состояния 503 (для версии 5.2 и ранее — HttpException ).

Для включения этого режима просто выполните Artisan-команду down:

Также вы можете передать в команду down опции message и retry. Значение message можно использовать для вывода или записи в журнал необходимого сообщения, а значение retry будет задано в качестве значения HTTP-заголовка Retry-After :

shphp artisan down --message="Upgrading Database" --retry=60 

Чтобы выйти из режима обслуживания выполните команду up:

Шаблон ответа для режима обслуживания
Шаблон для ответов по умолчанию для режима обслуживания находится в resources/views/errors/503.blade.php . Вы можете изменить его для своего приложения.

Режим обслуживания и очереди
Пока ваше приложение находится в режиме обслуживания, не будут обрабатываться никакие задачи очередей. Задачи продолжат обрабатываться как обычно, как только приложение выйдет из режима обслуживания.

Альтернативы режиму обслуживания

Поскольку для режима обслуживания необходима остановка вашего приложения на несколько секунд, рассмотрите такие альтернативы, как Envoyer, чтобы обеспечить обновление на лету.

Красивые URL

Apache

Фреймворк поставляется с файлом public/.htaccess , который используется для реализации URL-адресов без index.php . Если вы используете Apache для работы вашего Laravel-приложения, убедитесь, что включён модуль mod_rewrite .

Если поставляемый с Laravel файл .htaccess не работает с вашей инсталляцией Apache, попробуйте этот:

confOptions +FollowSymLinks RewriteEngine On RewriteCond % !-d RewriteCond % !-f RewriteRule ^ index.php [L]

Если ваш хостинг не разрешает опцию FollowSymlinks , попробуйте заменить её на Options +SymLinksIfOwnerMatch .

Nginx

В Nginx следующая директива в настройках вашего сайта позволит использовать «красивые» URL-адреса:

location / try_files $uri $uri/ /index.php?$query_string;
>

Само собой, при использовании Homestead красивые URL будут настроены автоматически.

  1. Аутентификация
  2. Авторизация (5.1+)
  3. Оплата (биллинг)
  4. Кэш
  5. Коллекции
  6. Командная шина
  7. Расширение фреймворка
  8. Elixir
  9. Шифрование
  10. Envoy
  11. Scout
  12. Ошибки и журнал
  13. События
  14. Файловая система и облака
  15. API Authentication (Passport)
  16. Хэширование
  17. Функции
  18. Локализация
  19. Работа с e-mail
  20. Разработка пакетов
  21. Страничный вывод
  22. Очереди
  23. Сессии
  24. Шаблоны Blade (5.1+)
  25. Шаблоны (5.0)
  26. Планировщик
  27. Юнит-тесты
  28. Проверка ввода
  29. JavaScript и CSS
  30. Сброс пароля

Статистика: Символов — 9 334/8 011 без пробелов (7 267/6 244 без кода):, слов — 1 024

Наверх Опечатка? Выдели и нажми Ctrl+Enter (Orphus.ru)

Источник

Оцените статью