Laravel – это один из самых популярных фреймворков для разработки веб-приложений и веб-сайтов на PHP. Он объективно-ориентированный, соблюдает модель MVC, поддерживает работу с несколькими базами данных, а также имеет множество инструментов для развёртывания ваших приложений и для упрощения процесса разработки.

В этой статье мы разберём, как выполняется установка Laravel Ubuntu 18.04 с помощью утилиты composer. Это намного проще, чем скачивать исходникии и устанавливать их вручную. Но для работы фреймворка вам будет необходимо иметь установленную базу данных, например MariaDB, и веб-сервер, например Nginx или Apache. Подробнее про установку всех этих компонентов читайте в статье установка LAMP в Ubuntu или как настроить веб-сервер на собственном компьютере.

Установка Laravel в Ubuntu 18.04

Пред тем, как мы перейдём непосредственно к установке, нам нужно ещё установить несколько компонентов. Сначала поставьте Composer, если его ещё нет:

sudo apt install composer

Я предполагаю, что интерпретатор php у вас уже установлен, но дополнительно нам понадобятся такие библиотеки:

sudo apt install php-mysql php-mbstring php-tokenizer php-xml php-json php-common

Теперь можно установить Laravel. Сначала перейдите в папку, где у вас будут находится веб-сайты. По умолчанию в Ubuntu это /var/www:

Для установки всего необходимого достаточно выполнить одну команду:

sudo composer create-project –prefer-dist laravel/laravel laravelapp

Установка Laravel в Ubuntu

Словосочетание laravelapp замените на название проекта и папки, в которой будет расположен ваш новый проект. Утилита автоматически скачает сам фреймворк и все его зависимости. После завершения установки вам нужно только выставить правильные права на файлы фреймворка. Их владельцем должен быть тот пользователь, от имени которого запускается веб-сервер и php. По умолчанию это www-data:

sudo chown -R www-data:www-data laravelapp

Для полноценной работы фреймворка нужна база данных. В этом примере мы настроим базу данных MariaDB. Подключитесь к базе данных и создайте новую таблицу:

sudo mysql -u root -p

> CREATE DATABASE laravel;

Установка Laravel в Ubuntu

Затем создайте пользователя для этой базы данных и дайте ему все права на неё:

> CREATE USER `laravel_user`@`localhost` IDENTIFIED BY ‘password’;
> GRANT ALL ON laravel.* TO `laravel_user`@`localhost`;

Установка Laravel в Ubuntu

Далее обновите таблицу привилегий:

По умолчанию Laravel настроен на использование нужной нам базы данных, но вам надо указать правильные параметры доступа к ней. Откройте файл config/database.php и найдите там секцию mysql:

Установка Laravel в Ubuntu

Синтаксис здесь очень простой. Это обычный массив php, особенность здесь в том, что программа пытается брать нужную конфигурацию из переменных окружения с помощью функции env. Если переменная окружения не задана, то берётся второй аргумент. Его вам и следует изменить. Измените имя базы данных (database), имя пользователя (username) и пароль пользователя (password). Если база данных расположена на этом же хосте, адрес хоста и порт можно оставить как есть.

Настройка веб-сервера для Laravel

Осталось проверить, как всё работает. Вы можете запустить Laravel без внешнего веб-сервера, только средствами встроенной утилиты artisan:

php artisan serve

Установка Laravel в Ubuntu

Эта команда запускает собственный веб-сервер, который доступен по адресу 127.0.0.1:8000:

Установка Laravel в Ubuntu

Но такой подход не очень практичен. Обычно нам необходимо запускать веб-приложения в Apache или Nginx. В Apache никаких особых настроек не нужно. Достаточно создать виртуальный хост для директории, где находится laravel и включить для него поддержку AllowOverride. Например, создайте такой файл в директории sites-available:

sudo vi /etc/apache2/sites-available/laravelapp.conf

<VirtualHost *:80>
ServerName laravelapp.ru
ServerAdmin webmaster@localhost
DocumentRoot /var/www/sites/laravelapp/public
<Directory “/var/www/sites/laravelapp/public”>
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog $/error.log
CustomLog $/access.log combined
</VirtualHost>

Установка Laravel в Ubuntu

Здесь мы используем домен lavarelapp.ru и наши файлы расположены в директории /var/www/sites/laravelapp. Теперь нужно активировать этот сайт в apache:

sudo a2ensite laravelapp

sudo systemctl restart apache2

Домен laravelapp.ru виртуальный, он мне не принадлежит и вам, думаю, тоже, поэтому нужно добавить такую строчку в файл /etc/hosts, чтобы на локальной машине всё работало:

sudo vi /etc/hosts

На производственном сервере просто указывайте реальный домен в настройках веб-сервера. Дальше ваш сайт будет доступен на выбранном домене:

Установка Laravel в Ubuntu

Конфигурация веб-сервера Nginx выглядит немного по-другому. Здесь не поддерживаются файлы .httaccess, поэтому нам нужно включить перенаправение всех запросов на index.php в основном конфигурационном файле:

sudo vi /etc/nginx/sites-available/laravelapp.conf

server <
listen 80;
listen [::]:80;
server_name laravelapp.ru
root /var/www/sites/laravelapp/;
index index.php;
location / <
try_files $uri $uri/ /index.php?$query_string;
>
>

Дальше вам нужно активировать этот сайт и перезапустить nginx. Также отметьте, что настройки php в nginx я здесь не привожу, но они тоже должны присутствовать.

Выводы

В этой небольшой статье мы разобрали, как выполняется установка laravel Ubuntu 18.04. Это очень мощный фремворк PHP, на котором создаются многие серьёзные проекты. На данный момент достаточно востребован на рынке и очень интересен в использовании, так как реализует многие стандартные шаблоны проектирования.

Нет похожих записей

alt=”Creative Commons License” width=”” />
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.

Вы пропустили

AEGIS Algorithms Android Angular Apache Airflow Apache Druid Apache Flink Apache Spark API API Canvas AppSec Architecture Artificial Intelligence Astro Authentication Authorization AutoGPT AWS AWS Aurora AWS Boto3 AWS EC2 AWS Lambda Azure Babylon.js Backend bash Beautiful Soup Bento UI Big Data Binary Tree Browser API Bun Career Cassandra Charts ChatGPT Chrome Extension Clean Code CLI ClickHouse Coding Codux Combine Compose Computer Context Fusion Copilot Cosmo Route CProgramming cron Cryptography CSS CTF Cypress DALL-E Data Analysis Data science Database dbt dbt Cloud deno Design Design Patterns Detekt Development Distributed Systems Django Docker Docker Hub Drizzle DRY DuckDB Express FastAPI Flask Flutter For Beginners Front End Development Game Development GCN GCP Geospatial Git GitHub Actions GitHub Pages Gitlab GMS GoFr Golang Google Google Sheets Google Wire GPT-3 GPT3 Gradio Gradle Grafana Graphic Design GraphQL gRPC Guidance HMS Hotwire HTML Huawei HuggingFace IndexedDB InfoSec Interview iOS Jackknife Java JavaScript Jetpack Compose JSON Kafka Kotlin Kubernetes LangChain Laravel Linux LlaMA LLM localStorage Logging Machine Learning Magento Math Mermaid Micro Frontends Mobile Mobile App Development mondayDB MongoDB Mongoose MySQL Naming NestJS NET NetMock Networks NextJS NLP Node.js Nodejs NoSQL NPM OOP OpenAI OTP Pandas PDF PHP Playwright Plotly Polars PostgreSQL Prefect Productivity Programming Prometheus Puppeteer Pushover Python Pytorch Quarkus Rabbitmq RAG Ramda Raspberry Pi React React Native Reactor Redis REST API Revolut Riverpod RProgramming Ruby Ruby on Rails Rust Scalene SCDB ScyllaDB Selenium Servers Sklearn SLO SnowFlake Snowkase Software Architecture Software Development Solara Solid Spring Boot SQL SQLite Streamlit SudoLang Supabase Swift SwiftUI Tailwind CSS Taipy Terraform Testing Transformers TURN TypeScript Ubuntu UI Design Unix UX UX Design Vim Vite VSCode Vue Web Architecture Web Components Web Development Web Frameworks Web Scraping Web-разработка Webassembly Websocket Whisper Widgets WordPress YAML YouTube Zed Наука о данных Разное Тренды

Как исследовать и визуализировать данные МО для обнаружения объектов на изображениях