Документация

Файл настроек .env

Пример рабочего файла с пояснениями и правило: что правится в файле, а что только в панели управления.

На этой странице

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

Правило простое: если настройку видно в панели управления, правьте её там. Значение из панели старше значения из файла, и правка файла ничего не изменит, зато собьёт с толку следующего человека.

Пример рабочего файла

Установщик создаёт такой файл сам. Здесь он приведён с пояснениями — на случай, когда магазин переносят на другой сервер или меняют домен.

APP_NAME="Мой магазин"
APP_ENV=production
APP_KEY=base64:…            # создаётся при установке, менять нельзя
APP_DEBUG=false
APP_URL=https://example.com

APP_LOCALE=ru               # язык панели управления по умолчанию
APP_FALLBACK_LOCALE=en

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=cartix
DB_USERNAME=cartix
DB_PASSWORD=пароль

SESSION_DRIVER=database
CACHE_STORE=database
QUEUE_CONNECTION=database
FILESYSTEM_DISK=local

Что здесь важно:

  • APP_KEY — ключ шифрования. Им зашифрованы пароли к платёжным системам, доступы к службам доставки и настройки хранилищ. Замените ключ — и магазин перестанет их читать, восстановить будет нечем. При переносе на другой сервер везите файл .env вместе с базой.
  • APP_DEBUG на работающем магазине всегда false. При true посетитель в случае ошибки увидит кусок кода и настройки сервера.
  • APP_URL должен совпадать с адресом сайта, включая https. От него строятся ссылки в письмах покупателям и обратные адреса платёжных систем.
  • QUEUE_CONNECTION=database — очередь задач хранится в базе. Это рабочее значение для обычного хостинга; менять его без нужды не стоит.

Настройки самого магазина

Их немного, и почти все нужны в редких случаях.

Строка Что делает
CARTIX_SPAWN_PROCESSES=false запретить магазину запускать отдельные программы — для хостингов, где это не работает
CARTIX_UPDATE_CHANNEL=beta получать предварительные версии раньше остальных
CARTIX_LICENSE_GRACE_DAYS=21 сколько дней магазин живёт по последней успешной проверке лицензии, если наш сайт недоступен
CARTIX_INSTALLER_MAX_UPLOAD_MB=64 предел на архив дополнения, устанавливаемого из файла
CARTIX_DEMO_TIMEOUT=600 сколько ждать загрузку демонстрационных товаров, секунд

Почта

Почтовый ящик, от которого уходят письма покупателям, настраивается только в панели управления: «Настройки» → «Каналы связи» → «Почта». Там же можно отправить пробное письмо. Строки MAIL_* в файле настроек магазин не использует — он собирает подключение из настроек канала при каждой отправке.

Сделано так намеренно: почтовый ящик меняют чаще, чем что-либо ещё, и владелец не должен ради этого лезть в файлы на сервере.

После правки файла

Магазин запоминает настройки, поэтому изменения в .env применяются не сразу. Выполните в папке магазина:

php artisan optimize:clear

Или, если консоли нет, нажмите «Очистить кеш» в разделе «Системный» → «Обслуживание».

Если на сервере включён OPcache, после правки кода (не настроек) может понадобиться перезапуск PHP-FPM — иначе сервер продолжит выполнять прежнюю версию файлов.

Чего в файле быть не должно

  • Резервных копий рядом. Файл .env.backup или .env.old в корне сайта веб-сервер может отдать по прямой ссылке вместе со всеми паролями. Храните копии вне папки сайта.
  • Доступов, которые уже не нужны. Оставленный ключ от старой платёжной системы — это доступ, который никто не отзывал.
Обновлено 7 августа 2026