Новини високих технологій
» » Установка Laravel: порядок дій, рекомендації

Установка Laravel: порядок дій, рекомендації

4-11-2018, 14:02
346
Laravel - вільна PHP-інфраструктура з відкритим вихідним кодом, розглядається як один з кращих фреймворків PHP. У нього є відмінна спільнота, фантастичний сайт документації та відмінні відеоуроки. Версія 1.0 була запущена всього кілька років тому. Виконавши установку Laravel, можна створювати і підтримувати високоякісні веб-додатки з мінімальними навантаженнями.

Коротко про Laravel

Laravel - це набір компонентів і бібліотек загального призначення в поєднанні зі стандартами програмування, які спрощують процес розробки. Основною перевагою установки Laravel є його гнучкість. Більшість фреймворків змушують програміста працювати певним чином. Laravel використовує дещо інший підхід. Він не форсує стиль, а тільки пропонує. Таким чином, метод поєднує в собі всі переваги стандартизації з можливістю додавання додаткових функцій.


Сьогодні установка Laravel є дуже затребуваною. Цей фреймворк виконаний на основі даних, наданих HotFrameworks. Laravel займає 8 місце в загальному рейтингу і 1 місце в рейтингу заснованих на PHP фреймворків, мають більше 23 тисяч зірок на GitHub. Для порівняння зазначимо, що CodeIgniter знаходиться тільки на 2 місці з 12 тисячами зірок.

Технологічна документація і монтаж

Як і у випадку з кожною новою технологією, користувачі повинні почати вивчати Laravel, прочитавши документацію. Зараз Laravel 5.7 є найбільш стабільною версією, а починають знайомство з офіційного сайту. Документація на установку Laravel акуратно структурована. Варто згадати, що іноді корисно поглянути на більш старі версії документації.


Документація Laravel пропонує використовувати Homestead - це гарне довгострокове рішення, але для його втілення потрібно набагато більше часу настройки. Після створення нових серверів боротьба йде за кожну секунду, тому простіше дотримуватися альтернативного рішення: Artisan. Він є основним інструментом у роботі з Laravel framework для багатьох користувачів. Одна з його функцій - запуск сервера командою "./artisan serve". Якщо потрібно зупинити його, просто закривають Artisan, використовуючи стандартний ярлик Unix Ctrl + C. найперше, що потрібно зробити перед початком робіт - це встановити PHP з усіма необхідними розширеннями і MySQL. Докладна інформація про цьому процесі залежить від ОС і може бути знайдена в документації на профільному сайті. Наступний крок - встановлення Composer. Коли є все, що потрібно, можна встановити framework двома способами - з допомогою Composer або з установником Laravel.

Структура пакетів

Laravel дуже гнучкий, що помітно, коли користувач використовує його здатність створення власної структури папок. У фреймворк Laravel є попередньо створена структура, але її можна значно розширити. Основна папка містить такі підкаталоги: Додаток - серце проекту, більшість коду буде розміщено тут. Консоль - папка містить консольні команди і ядро, де їх реєструють. Події - тут зберігаються всі події. Виключення - це місце, де створюються виключення. Цей каталог також містить файл з іменем handler.php, який відповідає за глобальну обробку винятків. Якщо потрібно їх самостійно обробляти, рекомендують створювати папку під назвою Handlers і заповнити її файлами, які реалізують інтерфейс Illuminate Contracts Debug ExceptionHandler. HTTP - все, що пов'язано з доступом до додатка з інтернету. Контролери - містять контролери, використовувані додатком. Middleware - містить класи декоратора, які можуть змінювати запит до його передачі контролеру, а також відповідь перед його відправкою користувачеві. Запити - містять файли, які відповідають за автоматичну перевірку запитів. Routes.php цей файл містить маршрутизацію. Робочі місця - ця папка містить «відстрочені завдання, які можуть виконуватися у майбутньому. Слухачі - тут буде відбуватися обробка подій. Тут же розміщують слухачів і підписників. Політики - застосовувані види політики, що використовуються для управління правами користувача. Постачальники - містять постачальників. Це класи, відповідальні за завантаження і управління додатками. Модель - папка для зберігання моделей. Контракти - ще одна папка, яку потрібно оформити. На цей раз вона заснована на стилі програмування Laravel, де створюють інтерфейси, звані контрактами, які будуть об'єднувати функціональні можливості додатків. У програмі існує ще багато важливих пакетів, з якими краще ознайомитися документації на профільному сайті перед створенням проекту.

Настройка конфігурації

Коли встановлено framework, виконують установку Laravel в поточну папку і здійснюють настройку. У більшості випадків можна дотримуватися значень за замовчуванням, якщо не потрібно використовувати деякі додаткові функції. Основна частина варіантів - добре задокументована, наприклад: Env. Першим кроком у кожній конфігурації є підготовка файлу .env. Це самий важливий файл, так як він містить всі облікові дані і конфігурацію, специфічну для сервера, на відміну від додатків, які зберігаються в каталозі config. APP_ENV - це значення визначає середовище, що використовується на сервері. Може мати два різних значення: локальне, яке готує додаток для тестування на сервері розробки, та виробниче, повністю оптимізує додаток для масового використання у виробництві. APP_DEBUG - це поле визначає, інструменти налагодження включені чи ні. При установці Laravel за рекомендаціями досвідчених розробників в цьому полі потрібно зберегти його в синхронізації з APP_ENV. Якщо APP_ENV = production, тоді APP_DEBUG = false, в іншому випадку APP_DEBUG = true. APP_KEY - це випадковий ключ, що використовується в процесі генерації та перевірки паролів. Якщо розробник змінить дане значення після початкової настройки, це призведе до того, що всі паролі, створені Laravel, перестануть бути чинними і зажадають регенерації. Це поле заповнюється автоматично під час інсталяції Laravel. Якщо потрібно змінити його, використовують наступну команду: "./artisan key: generate". APP_URL - відомо, що це такий url, який видається і використовується для створення шляхів з посилань і активів. DB - ці шість полів використовуються для налаштування з'єднання з базою даних. Більшість полів не вимагають пояснень. Єдине виключення - DB_CONNECTION, де розробники повинні прописати mysql.

Використання бази даних

CONFIG /database.php - файл дозволяє створювати більш досконалу конфігурацію бази даних. Laravel без установки яких-небудь зовнішніх пакетів підтримує наступні рішення: MySQL, pgSQL, SQLite, SQLSRV. Більшість конфігурацій вже підготовлені, єдиним винятком є SQLSRV, для чого потрібно додати ще один розділ.
У цьому файлі можна вибрати ім'я таблиці, використовуваної для зберігання міграцій, а також налаштувати з'єднання Redis. CONFIG /mail.php цей файл відповідає за відправку листів. Всі необхідні параметри встановлюють у файлі .env. Використання SMTP не є єдиним способом відправлення листів в Laravel. Альтернативи включають таке: Відправка поштової сценарію по шляху скрипта, який встановлений в його полі. Пошта для використання функції mail () PHP і сторонніх рішень (mailgun, mandril, amazon ses або sparkpost). Під час розробки можна встановити драйвер для реєстрації і збереження електронної пошти у журналі замість відправки повідомлення або додавання наступного розділу: 'to' =>['address' => 'dev@domain.com''name' => 'Dev Example' ] Після цього буде відбуватися автоматичне перенаправлення всіх адрес електронної пошти на цільовий адресу.

Управління файловими системами

CONFIG /FILESYSTEMS.PHP цей файл дозволяє управляти файловими системами, які автор використовує у своєму проекті. Laravel використовує безліч файлових систем завдяки бібліотеці під назвою Flysystem. Іноді потрібно, щоб кілька файлів зберігаються локально, а деякі - в хмарі. Ця комбінація також можлива з Laravel. Конфігурація за замовчуванням дозволяє зберігати файли з відкритим доступом storage /app і storage /app /public. Також доступно хмара Amazon (s3). Виконують деякі зміни і заміни розділу s3 дисків з наступним кодом.

Таким чином, можна розмістити облікові дані в одному місці (файл .env). При цьому буде більш чистий код, а ключі набагато безпечніше, без ризику випадкового розміщення їх у репозиторії.

Система черг CONFIG /QUEUE PHP

Черги - це спосіб виконання трудомістких завдань в режимі «пізніше». Для цього є кілька доступних рішень: Синхронізація. Це значення за замовчуванням і найпростіше рішення, яке означає «немає черг». Черга завдань виконується під час роботи скрипта. Це єдине рішення, яке не потребує додаткової інфраструктури. Можна залишити його, якщо не планується використовувати черзі і при коротких завданнях. База даних. Найпростіші методи, які будуть використовувати бази даних для зберігання завдань у черзі. Конфігурація вимагає, щоб було вибрано з'єднання з базою даних і таблицею для зберігання завдань. При цьому поле драйвера повинно бути дійсним ім'ям з'єднання, а не драйвера. Необхідна міграція може бути згенерована за допомогою майстра "./artisan queue:table". У разі механізму бази даних дуже важливо правильно встановити поле expire. Воно використовується для запобігання обробки однієї і тієї ж роботи двічі. Для цього воно повинно бути вище значення тайм-ауту, використовуваного при запуску працівників. Redis. Конфігурація так само проста, як і вибір імені з'єднання і значення expire, а beanstalk і sqs - це комерційні рішення, які можуть бути налаштовані з використанням правильних облікових даних. Пропонується використовувати функцію env () для їх зберігання у файлі .env. Failed - використовується для вибору таблиці в базі даних, яка потрібна для зберігання невдалих завдань. Міграція може бути створена за допомогою майстра "./artisan queue:failed-table".

Налаштування сторонніх пакетів

Деякі сторонні пакети вимагають додаткової настройки. У більшості випадків вони будуть використовувати файл з ім'ям, що відповідає своєму імені, але деякі з них цього не роблять. Ці пакети зберігають свою конфігурацію в CONFIG /SESSIONS.PHP. Цей файл відповідає за налаштування сеансів. Lifetime і expire_on_close вкажуть, як записаний сеанс слід зберігати, якщо він повинен бути вилучений після закриття браузера. Поле драйвера визначить, де повинен зберігатися сеанс:
file - зберігається у файлах, поміщених в папку, обрану з полем файлів; cookie - відправляється з кожним відповіддю і повертається в кожному запиті браузера; database - зберігається в базі даних, яка визначається полями підключення і таблицями. Міграція може бути зроблена за допомогою майстра: ./artisan session:table; apc - зберігається в ОЗП серверів; memcached - зберігається на сервері memcached, використовуючи конфігурацію з файлу cache.php; redis - зберігається на сервері redis; array - сеанс зберігається тільки для одного виклику. Це технічно відключена система сеансів. Є ще пакет, який потрібно додати перед початком розробки. Laravel-DebugBar - пакет, який додасть панель внизу веб-сайту, потрібну при налагодженні. Ця панель буде відображатися тільки в тому випадку, якщо включена налагодження. Встановлення цього пакету дуже проста.

Попередні вимоги

Перед установкою Laravel переконуються, що є такі розділи та елементи: Веб-сервер. PHP. MySQL. Composer install Laravel. Інтегрована середовище розробки (IDE). Наприклад, буде використовувати крос-платформа XAMPP. Вона поставляється з Apache, MySQL та PHP. Якщо у користувача немає XAMPP, можна завантажити її в інтернеті. Якщо він воліє працювати з іншими типами веб-серверів, тобто IIS, створений на веб-сервері, він також добре підходить для Laravel. Composer - це менеджер залежностей для PHP. Про нього можна прочитати на офіційному сайті та завантажити за запропонованою посиланням.

Установка Laravel на Windows 10

Після установки Composer переходять на htdocs в XAMPP. Знаходять кореневої веб-сервер і відкривають додаток Windows Explorer : C:/xampp/C:/xampp/htdocs. Далі потрібно клацнути мишею в будь-якому місці і вибрати Composer, як показано на зображенні нижче.
Вибирають композитор. З'явиться наступне вікно командного рядка:
Створюють новий проект із застосуванням композитора. Виконують: composer create-project laravel/laravel larashop. У командному рядку отримують наступний результат:
Чекають завершення установки, і проводять тестування. Для цього вводять в браузер localhost/larashop/public/. Може виникнути питання: url - що це таке? Пояснимо, ця адреса відкриває користувачеві гостьову сторінку.

Настроювання нового проекту

Інформація про конфігурацію програми знаходиться в config/app.php. Настроювання нового проекту послідовно здійснюють такі етапи: Встановлюють режим відладки, який використовується для визначення того, скільки інформації повинно відображатися при виникненні помилки. Встановлюють часовий пояс - цей параметр використовується для функцій дати і PHP. Встановлюють ключ додатки, значення якого використовується для шифрування. Порядок дій установки Laravel: Відкрити файл /config/app.php. Знайти наступний код: 'debug' => env('APP_DEBUG', false). Оновити його до наступного коду: 'debug' => env('APP_DEBUG', true). Він установлює режим відладки у значення true. Це змусить Laravel відображати детальну інформацію при виникненні помилки. Вона корисна для усунення неполадок. Встановити часовий пояс. Для цього знаходять код 'timezone' => 'UTC', встановлюють часовий пояс UTC. Це значення за замовчуванням. Якщо потрібно мати інший часовий пояс, можна замінити UTC на потрібне значення. Встановити ключ програми. Для цього знаходять наступний код 'key' => env('APP_KEY', 'SomeRandomString'). Оновити його до коду 'key' => env('APP_KEY', 'inesindinemwanawabambuyabakoiwe'). Де він являє собою рядок 32 символами, яка буде використовуватися в якості ключа шифрування.

Конфігурація аутентифікації

Файл конфігурації аутентифікації знаходиться в "./config/auth.php". У загальних випадках залишають значення за замовчуванням такими, які вони є. Якщо потрібно, можна змінити їх, у відповідності з додатковими вимогами. Файл конфігурації бази даних "./config/database.php". За замовчуванням MySQL буде використовуватися як механізм бази даних. Можна встановити його в іншу систему управління базами даних, якщо потрібно. Оновлюють наступні ключі: База даних. Ім'я користувача. Пароль.
Значення в наведеному вище прикладі: 'database' => env('DB_DATABASE', 'larashop') встановлює ім'я бази даних в larashop. Можна продовжити і створити порожню базу даних larashop в MySQL. 'username' => env('DB_USERNAME', 'root') встановлює корінь в якості імені користувача бази даних, який буде використовуватися для аутентифікації. Потрібно використовувати дійсне ім'я користувача для свого примірника MySQL. 'password' => env('DB_PASSWORD', 'melody') встановлює мелодію в якості пароля, який буде використовуватися для входу в систему. Потрібно використовувати дійсний пароль для свого примірника MySQL. Таким чином, буде створена добре сконфігурованого і повністю діюча база додатків, що працює від Laravel. В цілому фахівці підтверджують, що він дуже простий, інтуїтивно зрозумілий і зручний для користувачів.
Цікаво по темі
Microsoft Access - реляційна система управління базами даних: склад, сумісність
Microsoft Access - реляційна система управління базами даних: склад, сумісність
Поняття баз даних (DB – database) використовується скрізь. Компанії, фірми та організації різного рівня використовують БД у своїй роботі, довіряючи
Перевірка наявності файлу PHP file_exists
Перевірка наявності файлу PHP file_exists
Широке застосування баз даних не позбавило звичайну файлову систему значення. Запис і читання файлів як і раніше займають значиме місце в
Asterisk: установка та інструкція
Asterisk: установка та інструкція
Asterisk – одне з кращих рішень в області IP-телефонії, яке можна використовувати безкоштовно. Asterisk досить простий у використанні, і для нього
Postfix: настройка, установка. Поштовий сервер Postfix
Postfix: настройка, установка. Поштовий сервер Postfix
У цій статті ми розберемо, як налаштувати поштовий сервер Postfix на базі Ubuntu Linux. Ознайомившись з рекомендаціями, ви зможете відправляти і