패스 Nginx 1.2.4
와 PHP-FPM 5.4.8
함께 사용 fastcgi
하고에 맞춤 매개 변수를 전달하려고합니다 PHP
. 지금까지 찾은 옵션은 다음과 같습니다.
은 USING
env
지정하면의 환경 변수를 설정nginx
하고 그것을 인출getenv()
하거나$_ENV
에서PHP
. 문제는 컨텍스트env
에서만 작동하는 반면main
컨텍스트 에서 매개 변수를 설정해야한다는 것입니다server
.fastcgi_param
지시어를 위해 설계된대로 사용하십시오 .
사용하여 일부 매개 변수의 값을 변경하려고 시도 fastcgi_param
했지만 실패했습니다.
nginx :
fastcgi_param PATH_INFO "/var/tmp";
PHP :
찾을 수있는 모든 사전 정의 된 배열을 확인했습니다.
echo '<pre>';
echo "\n".'$GLOBALS'."\n"; var_dump($GLOBALS);
echo "\n".'$_SERVER'."\n"; var_dump($_SERVER);
echo "\n".'$_GET'."\n"; var_dump($_GET);
echo "\n".'$_POST'."\n"; var_dump($_POST);
echo "\n".'$_FILES'."\n"; var_dump($_FILES);
echo "\n".'$_REQUEST'."\n"; var_dump($_REQUEST);
echo "\n".'$_SESSION'."\n"; var_dump($_SESSION);
echo "\n".'$_ENV'."\n"; var_dump($_ENV);
echo "\n".'$_COOKIE'."\n"; var_dump($_COOKIE);
echo "\n".'$php_errormsg'."\n"; var_dump($php_errormsg);
echo "\n".'$HTTP_RAW_POST_DATA'."\n"; var_dump($HTTP_RAW_POST_DATA);
echo "\n".'$http_response_header'."\n"; var_dump($http_response_header);
echo "\n".'$argc'."\n"; var_dump($argc);
echo "\n".'$argv'."\n"; var_dump($argv);
echo '</pre>';
보여줄 유일한 PATH_INFO
것은 $_SERVER
:
var_dump($_SERVER); // ["PATH_INFO"]=> string(0) ""
그러나 내가 설정 한 가치 nginx
는 고려되지 않았습니다.
Q1 : 지시문을 적용 nginx/php
하려면 레벨 에서 무엇을 구성해야 fastcgi_param
합니까?
Q2 : fastcgi_param
지시어는 사전 정의 된 매개 변수 목록으로 제한 됩니까 (예 : PATH_INFO
와 같이 내 자신의 사용자 정의 변수를 설정할 수는 없지만 FOO
)?
Q3 : Q2에 예인 경우 : Nginx에서 PHP로 커스텀 파라미터를 전달하는 방법이 있습니까?
fastcgi.conf
와fastcgi_params
있지만fastcgi-php.conf
: 당신은 어디에서 얻었 는가? pastebin을 통해 공유 하시겠습니까?