Перейти к основному содержимому

Переменные окружения (.env)

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


📍 Расположение файла

/var/www/feedbackpulse-saas/.env

⚠️ Безопасность: Файл .env содержит чувствительные данные (пароли базы данных, API-ключи). Никогда не добавляйте его в систему контроля версий и не раскрывайте публично. Он должен иметь права 640.


🔧 После редактирования .env

После внесения изменений очистите кэш конфигурации:

php artisan config:clear
php artisan config:cache # Optional: cache for production performance

📋 Полный справочник переменных

🏠 Настройки приложения

ПеременнаяПо умолчаниюОписание
APP_NAMEFeedbackPulseНазвание платформы (отображается в письмах, заголовках)
APP_ENVproductionСреда: production, local, staging
APP_KEY(автогенерируется)Ключ шифрования. Никогда не меняйте после установки!
APP_DEBUGfalseПоказывать подробные ошибки. Должно быть false в production!
APP_URLhttps://yourdomain.comПолный URL платформы (с https)
APP_LOCALEenЯзык по умолчанию
APP_FALLBACK_LOCALEenЗапасной язык
BCRYPT_ROUNDS12Сложность хэширования паролей (выше = медленнее, но безопаснее)

⚠️ APP_DEBUG=true раскроет чувствительную информацию (учётные данные БД, API-ключи) на страницах ошибок. Никогда не включайте в production кроме коротких сессий отладки.

🗄️ База данных

ПеременнаяПо умолчаниюОписание
DB_CONNECTIONmysqlДрайвер БД: mysql, mariadb, sqlite, pgsql
DB_HOST127.0.0.1Адрес сервера БД
DB_PORT3306Порт БД
DB_DATABASEfeedbackpulseНазвание БД
DB_USERNAMErootПользователь БД
DB_PASSWORD(пусто)Пароль БД

📧 Email / SMTP

ПеременнаяПо умолчаниюОписание
MAIL_MAILERsmtpДрайвер почты: smtp, ses, postmark, sendmail, log
MAIL_HOSTsmtp.mailgun.orgХост SMTP-сервера
MAIL_PORT587Порт SMTP (587 для TLS, 465 для SSL)
MAIL_USERNAME(пусто)Пользователь SMTP
MAIL_PASSWORD(пусто)Пароль SMTP
MAIL_ENCRYPTIONtlsШифрование: tls, ssl или null
MAIL_FROM_ADDRESS[email protected]Email отправителя
MAIL_FROM_NAMEFeedbackPulseИмя отправителя

💳 Stripe (опционально)

ПеременнаяПо умолчаниюОписание
STRIPE_PUBLISHABLE_KEY(пусто)Публичный ключ Stripe (начинается с pk_)
STRIPE_SECRET_KEY(пусто)Секретный ключ Stripe (начинается с sk_)
STRIPE_WEBHOOK_SECRET(пусто)Секрет подписи вебхука Stripe (начинается с whsec_)

💰 PayPal (опционально)

ПеременнаяПо умолчаниюОписание
PAYPAL_CLIENT_ID(пусто)Client ID REST API PayPal
PAYPAL_CLIENT_SECRET(пусто)Секрет клиента REST API PayPal
PAYPAL_WEBHOOK_ID(пусто)ID вебхука PayPal для верификации
PAYPAL_MODEsandboxРежим: sandbox (тестирование) или live (production)

🔑 Социальный вход (опционально)

ПеременнаяПо умолчаниюОписание
GOOGLE_CLIENT_ID(пусто)Client ID OAuth Google
GOOGLE_CLIENT_SECRET(пусто)Секрет клиента OAuth Google
GITHUB_CLIENT_ID(пусто)Client ID OAuth GitHub
GITHUB_CLIENT_SECRET(пусто)Секрет клиента OAuth GitHub

🤖 AI / OpenAI (опционально)

ПеременнаяПо умолчаниюОписание
OPENAI_API_KEY(пусто)Ключ API OpenAI для анализа тональности, автотегирования, AI-ответов

🤖 reCAPTCHA (опционально)

ПеременнаяПо умолчаниюОписание
RECAPTCHA_SITE_KEY(пусто)Site key Google reCAPTCHA v2/v3
RECAPTCHA_SECRET_KEY(пусто)Секретный ключ Google reCAPTCHA

🍪 Сессии и кэш

ПеременнаяПо умолчаниюОписание
SESSION_DRIVERfileХранилище сессий: file, database, redis, cookie
SESSION_LIFETIME120Тайм-аут сессии в минутах
SESSION_DOMAIN(пусто)Домен cookie (установите .yourdomain.com для поддоменов)
SESSION_SECURE_COOKIEtrueТребовать HTTPS для cookie сессий
CACHE_STOREfileДрайвер кэша: file, database, redis, memcached

📦 Очереди и задачи

ПеременнаяПо умолчаниюОписание
QUEUE_CONNECTIONsyncДрайвер очереди: sync, database, redis

⏰ Cron (виртуальный хостинг)

ПеременнаяПо умолчаниюОписание
CRON_TOKEN(автогенерируется)Секретный токен для web-эндпоинта cron /cron/run?token=. Автогенерируется при установке. Требуется только при использовании URL-based cron вместо CLI.

📁 Хранилище файлов

ПеременнаяПо умолчаниюОписание
FILESYSTEM_DISKlocalДиск хранилища по умолчанию: local, public, s3

🪵 Логирование

ПеременнаяПо умолчаниюОписание
LOG_CHANNELstackКанал логов: stack, single, daily, syslog
LOG_LEVELerrorМин. уровень логов: debug, info, notice, warning, error, critical

💡 Пример production .env

APP_NAME="FeedbackPulse"
APP_ENV=production
APP_KEY=base64:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
APP_DEBUG=false
APP_URL=https://feedback.mycompany.com

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=feedbackpulse
DB_USERNAME=fp_user
DB_PASSWORD=super_secure_password_here

SESSION_DRIVER=file
SESSION_LIFETIME=120
SESSION_DOMAIN=.feedback.mycompany.com
SESSION_SECURE_COOKIE=true
CACHE_STORE=file

QUEUE_CONNECTION=sync

MAIL_MAILER=smtp
MAIL_HOST=smtp.mailgun.org
MAIL_PORT=587
[email protected]
MAIL_PASSWORD=mailgun_password_here
MAIL_ENCRYPTION=tls
[email protected]
MAIL_FROM_NAME="FeedbackPulse"

STRIPE_PUBLISHABLE_KEY=pk_live_xxxxx
STRIPE_SECRET_KEY=sk_live_xxxxx
STRIPE_WEBHOOK_SECRET=whsec_xxxxx

OPENAI_API_KEY=sk-xxxxx

LOG_CHANNEL=daily
LOG_LEVEL=error

⏭️ Следующие шаги