2016-09-14 7 views
4

필자는 허용 목록에있는 웹 사이트에 양식을 삽입하고 싶습니다.허용 된 웹 사이트에만 iFrame을 삽입하는 방법은 무엇입니까?

다른 웹 사이트에 포함 시키려하면 오류 페이지 만 표시됩니다.

<iframe src="https://domain.tld/getForm.php?embed=1&formId=123456"></iframe> 

것은 내가이 embeding 웹 사이트를 확인 getForm.php$_SERVER['HTTP_REFERER']를 사용할 수 있다고 기대했다, 그러나 그것은 작동하지 않습니다.

모범 사례 또는 해결 방법을 알고 있습니까?

미리 감사드립니다.

+1

'getForm.php'에 요청하는 원격 주소의 IP를 확인해야하지만, IP는 스푸핑 될 수 있습니다. '$ _SERVER' 저녁을 보라. 나는'REMOTE_ADDR'이 전화를 걸고있는 사이트의 IP라고 생각 하겠지만, 나는 100 % 확신 할 수 없다. 그것은 단지 클라이언트 IP일지도 모른다. – ArtisticPhoenix

+0

해결 방법을 찾을 수 있습니까? 나는 $ _SERVER [ 'HTTP_REFERER']를 시도했지만 잘 동작하지만 어딘가에 스푸핑 될 수 있으므로 더 나은 해결책이 있습니까? –

답변

7

대부분의 브라우저는 X-Frame-Options 헤더를 지원합니다.

이 헤더는 방지 할 수 액세스 : 옵션에 대한

X-Frame-Options: ALLOW-FROM [uri] 

예 : PHP에서

X-Frame-Options: DENY 
X-Frame-Options: SAMEORIGIN 
X-Frame-Options: ALLOW-FROM https://example.com/ 

예 :

X-Frame-Options: SAMEORIGIN 

그리고이 헤더 액세스를 허용하는

<?php header('X-Frame-Options: SAMEORIGIN'); ?> 

당신은 여기에서 더 읽을 수 있습니다 https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options

이 조금 도움이되기를 바랍니다!