2009-10-13 2 views
1

회사의 내부 URL 단축 웹 사이트를 구축하고 있습니다. 사용하는 사람이 거의 없기 때문에 사람들이 자신 만의 맞춤 단축 URL을 선택할 수 있도록하고 있습니다. 따라서 예를 들어, 당신은 단축 URL 수 : 우리가 정기적으로 리디렉션에 추가하여 제공하는 멋진 것이라고 생각단축 URL을 주소 표시 줄에 남기는 단축 단축

http://goto/toms-projects

을, 능력이있는 단축 URL을 떠나 주소 표시 줄. 이렇게하는 한 가지 방법은 프레임 함께 :

<frameset rows="100%,*" border="0"> 
    <frame src="http://some_really_long_url" frameborder="0" /> 
    <frame frameborder="0" noresize /> 
</frameset> 

그러나이 솔루션은 대상 사이트에 대한 링크가 (하나는 주소 표시 줄을 업데이트하지 않습니다 클릭) 나누기.

이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

답변

0

대상 URL을 읽고 해당 내용을 다시 전달하는 통과 스크립트를 작성할 수 있습니다. 나는 그것이 튼튼 할 것이라는 점을 의심한다. 나는 이것에 대한 어떤 해결책도 튼튼하지 않을 것이라고 생각한다. 이것의 목적은 무엇입니까? 프레임의 문제점은 무엇입니까?

+0

@ 반복적 : 프레임에 무엇이 잘못된지는 OP에서 언급합니다. "대상 사이트의 링크가 끊어집니다 (주소 표시 줄을 클릭해도 링크가 깨지지 않습니다)." – Asaph

+0

주소 표시 줄의 주소가 http : // some_really_long_url_with_special_characters –

+0

보다 http : // goto/toms-projects가 더 시각적으로 즐겁습니다. – recursive

1

왜 리다이렉트 대신 적절한 파일/콘텐츠를 서버 측에 포함시키는 것이 좋을까요?

+0

나쁜 생각. 상대 URL은 어떻습니까? –

+0

@Kalmi : 나는이 대답을 게시 한 후에이 질문을 편집했다고 생각합니다. 내 답변은 원래 게시 된 질문에 대해 의미가있었습니다. 어쨌든 html ""태그를 사용하여 상대 URL의 올바른 동작을 유지하는 또 다른 답변을 게시했습니다. – Asaph

3

페이지 내 상대 링크의 원래 대상을 유지하려면 base tag을 사용할 수 있습니다.

<html> 
    <head> 
     ... 
     <base href="/original/really/long/url/" /> 
     ... 
    </head> 
    <body> 
      ... 
      <a href="relative-url.html">a happy relative link</a> 
      ... 
    </body> 
</html>