이 문제를 해결할 수있는 유일한 사람은 내가 믿을 수 없지만 어디에서나 찾을 수는 없습니다.Azure 웹 역할에서 시스템 변수 설정/가져 오기
우리는 현재 우리의 응용 프로그램을 실행하는 Azure 웹 역할을 가지고 있으며 보안을 위해 시스템 환경 변수에 사용자 이름, 암호 및 API 키와 같은 자격 증명을 입력하고 getenv()
을 사용하여 PHP 스크립트에 가져 오기로 결정했습니다.
IIS와 PHP가 설치된 Windows Server Web Role을 실행하고 있습니다. 나는 그렇게처럼 내 ServiceDefinition.csdef
에서 시작 작업을 사용하고 있습니다 : 웹 역할이 스핀 업 될 때
<Startup>
<Task commandLine="setEnvironmentVariables.cmd" executionContext="elevated" />
</Startup>
cmd
파일의 내용은 단순히 환경 변수를 설정합니다.
지금까지 그렇게 좋았습니다. 그러나 나는 우리의 창 dev에 서버에 경험에서 알다시피 PHP 스크립트에 새로 추가 된 환경 변수를 보려면 IISReset
을 실행해야합니다. 그러면 getenv()
을 사용하여 볼 수 있습니다.
여기에이 문서에 따라 푸른 웹 역할에 대한 IISReset
를 실행할 수 없습니다 그러나이 https://azure.microsoft.com/en-us/blog/iis-reset-on-windows-azure-web-role/
그래서 내 스크립트는 변수를 볼 수 없습니다! 뭔가 빠졌는가, 아니면 PHP가 볼 수 있도록 웹 역할이 시작될 때 시스템 환경 변수를 설정하는 더 쉬운 방법이 있습니까?
앱 설정을 사용하여 환경 변수를 설정하는 것이 고려 되었습니까? – 4c74356b41
@ 4c74356b41 앱 설정? 클라우드 서비스 웹 역할/작업자 역할을 사용하는 앱 설정이 없습니다 ... Azure Web Apps에 대해 이야기하고있는 것 같습니다. – superphonic
오, 죄송합니다. 제목을 잘못 읽었습니다. – 4c74356b41