Назад | Перейти на главную страницу

Переменные среды для приложений PHP

Приложение PHP требует, чтобы я установил несколько переменных среды с такими вещами, как учетные данные базы данных, SMTP-сервер и т. Д.

Примеры переменных включают:

FOO_DATABASE_URL=mysql://user:pass@host:3306/dbname
FOO_SMTP_SERVER=smtp://user:pass@host:25
FOO_FILE_PATH=/var/www/foo
FOO_URL_HOST=example.org
FOO_URL_PATH=/foo

Где подходящее место для установки этих переменных?

Сначала я попытался установить их в ~/.profile но я понял, что не являюсь пользователем Apache, так что это не сработает. я обнаружил /etc/environment но я не уверен, что это подходящее место для их установки. В настоящее время есть только PATH там. Если я установил их там, мне нужно было префикс строки с export?

В документации указано, что файлов ENV следует избегать в производстве, чтобы максимизировать производительность. Я также хотел бы избежать использования Apache SetEnv и PassEnv директивы, если возможно.

Мой производственный сервер - CentOS, однако я хотел бы знать, как это сделать в Linux Mint и Ubuntu, хотя в настоящее время я использую файл ENV для разработки.

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

Это то, что Laravel есть, но если у вас есть проблемы с производительностью и / или безопасностью, вы можете взглянуть на Свод.