SetEnv в файле htaccess не работает с PHP-FPM

Я перехожу из предварительной настройки apache в режим событий с php-fpm. В режиме prefork я могу использовать директивы SetEnv в файле htaccess следующим образом:

SetEnv CI_ENV testing

И это значение заканчивается в PHP:

echo $_SERVER["CI_ENV"]; // outputs "testing"

Однако, когда apache находится в режиме события, это значение больше не попадает в PHP. Что-то сломано? Какой самый лучший, самый ортодоксальный способ исправить это? Должен ли я поместить команду SetEnv в директиву VirtualHost? В файле php-fpm.conf? Пожалуйста, порекомендуйте.

S

1 ответ

Всем должно быть приятно узнать, что вы можете поместить директиву SetEnv в VirtualHost в файл конфигурации apache, и это все еще работает, даже с PHP-FPM.

В моем случае это файл /etc/apache2/sites-available/default-ssl.conf:

sudo nano /etc/apache2/sites-available/default-ssl.conf

В пределах VirtualHost там вы можете добавить свой SetEnv директива:

    <VirtualHost _default_:443>
            ServerAdmin webmaster@localhost
            DocumentRoot /var/www/html

            # ETC ETC ETC

            # added because it doesn't work from .htaccess file with PHP-FPM
            SetEnv CI_ENV testing

            # ETC ETC ETC
    </VirtualHost>
Другие вопросы по тегам