Google 시스템을 Google App Engine으로 이전하려고합니다.Google App Engine 서버 IP 주소
PDF 생성기가 외부 리소스 (예 : 그림)를 필요로 할 때 내부 HTTP 요청 (요청 IP가 사용자 IP와 다른 경우)을 수행합니다. 그런 다음 다른 세션도 시작하므로 사용자가 로그인했는지 확인할 수 없습니다. 올바른 사용 권한을 부여하려면 요청이 서버 IP에서 오는 것인지 확인해야합니다.
if($_SERVER['REMOTE_ADDR'] == $_SERVER['SERVER_ADDR']) {
return true;
}
그러나 $ _SERVER [ 'SERVER_ADDR는']를 사용할 수 없습니다 때문에,이 사용할 수 없습니다 : 이전 코드에서
나는이 다음 코드 물마루 확인. 새로운 코드에서 나는이 다음 코드 여물 확인 : 문제가$allowed_ips = array(
'127.0.0.1',
'8.35.201.100'
);
if(in_array($_SERVER['REMOTE_ADDR'], $allowed_ips)) { return true; }
을; Google App Engine이 내부 요청을 수행하기 위해 사용하는 IP 주소를 모르겠습니다. IP 주소 8.35.201.100을 서버 주소로 찾았지만 더 많은 IP 주소 또는 범위가 있습니다.
작업 대기열 Google App Engine은 IP 주소 0.1.0.2 (https://developers.google.com/appengine/docs/php/taskqueue/overview-push#Task_Execution)에서 요청을 발행합니다. 이것은 내부 요청과 동일합니다.
접견, 헨드릭
IP 주소 대신 요청 헤더를 사용할 수 있습니다.이 헤더는 appengine에서 온 요청이며 appengine appID를 알려주므로 자신의 appengine 앱을 식별 할 수 있습니다. –
이 요청 헤더를 얻으려면 어떻게해야합니까? 여러 방법 ($ _SERVER, getallheaders())을 시도했지만 아무도 나에게 요청 원점 및 appID를 제공하지 않습니다. – Hendrik