Структура проекта
Ниже вы можете ознакомится с описанием каталогов и файлов, из которых состоит проект. В списке присутствуют лишь те файлы или директории, которые могут быть полезны обычному пользователю.
app - В этой директории хранится весь основной программный (PHP) код магазина. Это мозг L-Shop'а. Чтобы пользователь не делал в магазине, все обрабатывается именно здесь.
bootstrap - С этой папки начинается работа всей системы. Файлы внутри вызываются непосредственно из index.php. Также здесь хранится кэш, необходимый для более быстрого запуска фреймворка.
config - В config находится вся конфигурация системы.
app.php - Этот файл содержит основные настройки приложения. Нужная конфигурация автоматически подхватывается из .env, поэтому вам может понадобится редактировать этот файл только в самом крайнем случае.
shop.php - Файл с настройками, относящимися непосредственно к магазину.
purchasing.php - Конфигурационный файл с настройками покупок.
monitoring.php - В этом файле хранятся настройки мониторинга серверов.
database - Директория database содержит данные, необходимые для миграции, заполнения базы данных.
migrations - Директория с миграциями базой данных.
seeds - Здесь хранится логика заполнения базы данных первоначальной информацией.
public - В public хранятся собранные стили, javascript-код, картинки и тд. Одним словом все, что отвечает за внешний вид. Именно сюда необходимо устанавливать DOCUMENT ROOT вашего веб-сервера. Делать это нужно для того, чтобы вынести 'корень' сайта в папку на уровень выше. Таким образом, пользователи не смогут 'прогуляться' по каталогам приложения.
css
app.min.css - Собранные и минимизированные стили.
img - В этой директории находятся различные изображения.
shop - Изображения, относящиеся к магазину.
items - Изображения предметов. Именем файла является контрольная сумма, взятая из содержимого файла алгоритмом md5. Такой способ именования файлов необходим для того, чтобы избежать дублирования файлов, если будут загружены несколько одинаковых изображений.
empty.png - Картинка предмета без заданного изображения.
users
cloaks - Изображения плащей пользователей. Именем файла является ник игрока.
skins - Изображения скинов пользователей. Именем файла является ник игрока.
default.png - Стандартный скин игрока. Будет активен, если не установлен кастомный.
layout - Изображения, относящиеся к общей разметке.
js
app.min.js - Собранный и минимизированный javascript-код.
favicon.ico - Иконка сайта. Отображается в браузере (В заголовках, закладках и тд.)
robots.txt - Этот файл используется поисковыми роботами для получения информации о том, какие страницы нужно, а какие не нужно индексировать. Правильная настройка содержимого robots.txt положительно влияет на SEO.
resources
assets - Ассеты - это несобранные файлы стилей и javascript-код, а также vue-компоненты. Вы можете внести в них изменения, а затем воспользоваться Webpack'ом, дабы собрать, минимизировать и переместить в нужное место.
lang - Языковые настройки приложения.
views - HTML-разметка страниц и email-писем. В силу того, что L-Shop является SPA тут находятся не так много файлов.
routes - Директория с маршрутами. Во внутренних файлах задаются url'ы для каждой страницы, а так же соответствующий им контроллер.
storage - Логи, кэш и другой рантайм.
logs - В эту папку будет происходить логирование фреймворком.
laravel.log - Является основным файлом журнала, если элемент массива log в файле config/app.php имеет значение 'single'.
tests - Здесь 'лежат' юнит-тесты, а также функциональные тесты для тестирования приложения.
vendor - Папка с зависимостями. Именно здесь находится фреймворк Laravel и все его компоненты.
.env - Файл конфигурации. В нём происходит конфигурирование основных настроек фреймворка.
.env.example - Шаблонный файл конфигурации. Должен быть переименован в .env.
webpack.config.js - Файл сборщика фронтенда проекта Webpack.
Last updated