저는 prefork Apache 설정에서 php-fpm을 사용하여 이벤트 모드로 전환하고 있습니다. 프리포크 모드에서는 다음과 같이 htaccess 파일에 SetEnv 지시문을 사용할 수 있습니다.
SetEnv CI_ENV testing
그리고 그 값은 PHP로 끝납니다:
echo $_SERVER["CI_ENV"]; // outputs "testing"
그러나 이벤트 모드의 Apache를 사용하면 해당 값이 더 이상 PHP에 입력되지 않습니다. 뭔가 고장난 걸까요? 이 문제를 해결하는 가장 좋고 가장 전통적인 방법은 무엇입니까? VirtualHost 지시문에 SetEnv 명령을 넣어야 합니까? php-fpm.conf 파일에서? 조언해주세요.
에스
답변1
실제로 아파치 구성 파일의 VirtualHost에 SetEnv 지시문을 넣을 수 있으며 이는 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>