2012-04-03 4 views
0

iframe에 외부 웹 사이트를로드하려고합니다. 그러나 Same-Origin-Same-domain 정책으로 인한 문제에 직면했습니다. 그래서이 문제를 해결하기 위해 우리는 우리가 요청한 프록시 파일 (나는 자바로 썼다)에 프록시 요청을 보낸 후 서버를 요청하고 응답을 돌려주는 프록시 솔루션을 사용했다. 이것은 완벽하게 잘 작동합니다.크로스 사이트 스크립팅 리소스 공유 해결

하지만이 방법을 사용하면 모든 페이지가 내 iframe에 제대로로드되지 않습니다. 현재 localhost에서 작업 중입니다. 내가 이러한 오류가있어 www.google.com을 가져 오는 경우 : - - : 상대 경로가에 규정되어 있기 때문에

GET http://localhost:8080/images/srpr/logo1w.png 404 (Not Found) 

a.html:101 GET http://localhost:8080/extern_js/f/CgJlbhICaW4gACswRTgALCswWjgALCswDjgALCswFzgALCswPDgALCswUTgALCswCjgAmgICaGUsKzCYATgALCswFjgALCswGTgBLCswQTgALCswTTgALCswTjgALCswVDgALCswaTgALCswkAE4ACwrMJIBOAAsKzDVATgALCsw2AE4ACwrMBg4ACwrMCY4ACyAAlCQAnA/Q4V9Cbp7fuo.js 404 (Not Found) 

이러한 오류

는 오는을 내가 직면하고 문제는 같은 페이지를 가져 오는 몇 가지 오류가있다 웹 페이지 (나는 추측한다)를 가져오고있다. 내가 맞습니까? 만약 내가 그때 이러한 오류를 해결할 수 있도록 이러한 것들을 해결하는 방법.

그물을 검색 한 후이 작업을 완벽하게 수행하는 사이트가 있습니다. 체크 아웃하십시오 http://optimizely.com

+0

낮은 평판 포인트와 스팬 검사로 인해 게시 할 수없는 2 개의 다른 GET 오류가 있습니다. – sachinjain024

+0

SOP가 이유가 있습니다 ... * 왜 * 우회하려고합니까? – Matt

+0

자세한 내용을 알려면 _ 귀하의 질문을 편집하십시오. –

답변

1

사이트에서 상대 HREF (사이트가로드 된 도메인/경로와 관련됨)를 사용하는 경우 명백한로드 도메인/경로를 무언가로 변경했기 때문에 솔루션에서 문제가 발생할 수 있습니다 그밖에.

<base href="http://www.google.com"> 

더 많은 정보를 원하시면,이 문서를 참조하십시오 : 당신이합니다 (<head> 섹션) 페이지에서 적절한 장소에 태그를 삽입하는

하나의 가능성은 다음과 같이 적절하게 기본 href를 설정하는 것입니다 http://www.drostdesigns.com/base-href-tag/

이 솔루션은 사이트가 이미 <base href="xxx"> 태그를 사용하고있어 문제가 발생할 수 있으며로드 된 도메인/경로를 기반으로 자바 스크립트 코드가 조작을 수행하기 때문에 기본 href가이를 수정하지 않기 때문에이 솔루션을 사용할 수 있습니다. 문제가 중요한지 아닌지는 특정 페이지에 달려 있습니다.

기본 href 솔루션이 작동하지 않는 경우 리소스에 대한 다른 모든 요청 (이미지, 아약스 호출 등)을 프록시하여 모든 호스트가 다른 호스트를 대상으로하지만 사용자에게 요청할 수 있습니다 적절히 프록시 처리됩니다. 이것은 훨씬 더 확실합니다.

+0

감사합니다. jfriend00, 답변이 정말 도움이됩니다. – sachinjain024

0

문제의 지금까지 게시 한 설명만으로는 알 수있는 방법이 없습니다. 그러나 답변이 실제로 언급 된대로라면 간단히 해결하십시오. 상대 링크는 프록시 스크립트 내에서 도메인을 앞에 추가하여 정규화 된 링크로 만듭니다.

관련 문제