2010-07-07 5 views
5

나는 작은 URL이 어떻게 작동하는지 궁금해하고 있습니다.작은 URL은 어떻게 작동합니까?

내 사이트와 비슷한 것을 개발하고 싶지만, 대부분의 사람들은 ID 용 GUID를 사용합니다. 객체가 생성되면 public id로 사용할 임의의 10 자의 문자열을 생성해야합니까? 아니면 똑똑한 방법이 있습니까? www.mysite.com/default.aspx?userId={id} 새로운 URL의

예 : 이전 URL의

예 www.mysite.com/pwzd4r9niy

+2

사이트의 "실제 콘텐츠"와의 충돌을 허용하지 않도록주의하십시오! 그건 나쁠거야. – Borealid

+0

보리 알 리드, '진짜 물건'과의 콜레 션은 무엇을 의미합니까? – Dofs

+0

Dofs : 그는 실제 페이지와 동일한 "새 URL"을 생성하면 문제가 발생한다는 것을 의미합니다. 예를 들어, 임의의 문자열이'index.aspx '인 경우를 상상해보십시오. –

답변

5

당신은 어떤 종류를 사용할 수 있습니다 임의의 문자열 생성기 또는 GUID가 필요합니다. 나는 훨씬 똑똑한 접근법이 있다고 생각하지 않는다. (Palantir는 들어오는 URL을 해시하는 멋진 대안을 제공합니다.)

나머지는 비교적 간단합니다. ID 및 대상 URL이있는 데이터베이스 테이블을 유지하십시오. 요청이 들어 오면 ID를 검색하고 header 대상 URL로 리디렉션합니다.

자세한 내용은 this blog post.

사전 목록의 단어를 사용하여 URL을 만드는 리디렉션 서비스가 있습니다.

슬프게도, EvilURL은 사라졌습니다! 정말 가치 유일한 URL 리디렉션 서비스 이었다

http://evilURL.com/donkey_porn-shotguns/cracking-virus-exploit 

처럼 "짧은"URL을 생성하는 데 사용. :)

조금 퀴즈로서, http://to은 가장 짧은 리디렉션 서비스입니다 (그리고 가장 짧은 웹 URL이라고 생각합니다).

+1

여전히 http://www.shadyurl.com/이 있습니다. – Piskvor

+1

@Piskvor awww, perfect! * http : // 5z8.info/malicious-cookie_d5d2_hateminorities' :) –

+0

사실, 파인애플에 살고있는 사람에 대해 어떤 점이 마음에 들지 않습니까? :디 – Piskvor

0

합리적인 길이로 전체 문자열을 해시합니다.

관련 문제