2011-11-14 4 views
1

page1.jsppage2.jsp의 두 개의 JSP가 있습니다.검색 기록에 페이지가 포함되는 것을 피하는 방법

page1.jsp의 출력은, 일부 circunstances 아래에있을 수 있습니다 :

<a href="page2.jsp" id="hiddenlink" style="display:none;" >not displayed</a> 
<script>this.location.href=document.getElementById("hiddenlink").href;</script> 

이상한 방법으로 리디렉션을 수행하는 이유는 모든 링크의 URL을 다시 쓰는 웹 애플리케이션의 레이어 (필터)는이 때문이다 읽을 수없는 문자열로. 브라우저는 <a href="_YerwfwTWEf5YH34njtyRX"...>과 같은 것을 얻을 것입니다.

이러한 경우 브라우저의 기록에 page1.jsp이 저장되지 않도록하는 방법 (메타 또는 헤더 등)이 있습니까?

감사

답변

2

유일한 방법은 자바 스크립트를 통해 location.replace을 사용하는 것입니다. 다른 방법 (링크, 리디렉션 등 클릭)은 기록에 새로운 항목을 추가합니다. 대신이의

+0

나는, I를 그 해보자을 그 방법을 '대체'한다는 것을 알지 못했습니다. –

0

:

this.location.href=document.getElementById("hiddenlink").href; 

사용이 너무 만 page2.jsp는 역사에있을 것입니다 브라우저 기록에서 현재 페이지 교체 :

window.location.replace(document.getElementById("hiddenlink").href); 
+0

JS가 사용 중지 된 사용자는 아직 방문 기록에 원래 페이지가 남아 있음을 기억해야합니다. – Matt

+0

JS가 사용 중지 된 경우 질문에 사용 된 리디렉션이 전혀 작동하지 않습니다. 이 질문에 사용 된 클라이언트 측 리디렉션 메커니즘에는 javascript가 필요합니다. javascript가 없으면 페이지는 page1.jsp가되고 기록에는 해당 페이지가 표시됩니다. – jfriend00

+0

예, JS는 저에게 "거기에있을 것"이므로 문제가되지 않습니다. anwser 주셔서 감사합니다. –

관련 문제