Ne kadar kısa URL servisleri çalışıyor mu?
Nasıl TinyURL Metamark gibi servisler çalışıyor mu?
Sadece küçük bir URL ile [sanal?] tuşuna ilişkilendirmek mı sadece "HTTP" orijinal URL? yönlendirme sağlayan bir web sayfası yoksa dahası da mı var "büyü"?
[özgün ifade] Ben genellikle Küçücük, Metamark, ve diğerleri gibi URL kısaltma servislerini kullanmak, ama ben her zaman, bu servisin nasıl çalıştığını merak ediyorum. Başka bir sayfaya yönlendirmek olacak yeni bir dosya oluşturmak veya alt kullanıyorlar mı?
CEVAP
Başkalarının yönlendirmeleri nasıl cevap ama aynı zamanda küçücük URL oluşturmak nasıl bilmeli. Yanlışlıkla kısaltılmış URL için benzersiz bir kod üretmek için, URL, bir karma oluşturdukları duyarsınız. Bu çoğu durumda yanlıştır, bir karma algoritma çarpışmalar olabilir potansiyel () kullanarak değil.
En popüler URL kısaltma servisleri sadece almaya KİMLİĞİ veritabanı URL ve daha sonra dönüştürmek için iki Temel 36 [a-z0-9] (büyük / küçük harf duyarlı) veya Baz 62 (büyük küçük harf duyarlı).
Küçücük bir Veritabanı Tablosu basitleştirilmiş bir örnek:
ID URL VisitCount
1 www.google.com 26
2 www.stackoverflow.com 2048
3 www.reddit.com 64
...
20103 www.digg.com 201
20104 www.4chan.com 20
Esnek yönlendirme sağlayan Web Çerçeveleri gelen URL kullanımı gerçekten çok kolay (Yakut, ASP.NET MVC, vb) yapmak.
Böylece, web sunucunuza (sahte kod) gibi görünen bir güzergah eylem olabilir:
Route: www.mytinyurl.com/{UrlID}
Route Action: RouteURL(UrlID);
Etki sonra herhangi bir metin olan sunucunuza gelen herhangi bir istek ilişkili yöntemine www.mytinyurl.com hangi RouteURL. Bu yöntem URL eğik çizgi sonra geçirilen metin sağlar.
Demek istediğin şöyle diyelim: www.mytinyurl.com/fif
< . p ^"fif" o zaman senin yöntemi, RouteURL(String UrlİD) geçecek. RouteURL sonra "" base10 eşdeğer, 20103 ve veritabanı isteği KİMLİĞİ 20103 (bu durumda, www.digg.com). altında saklanan her neyse yönlendirmek yapılacaktır fif dönüştürmek istiyorsunuz Ayrıca bu ziyaret doğru URL yönlendirme önce bir Kazma için sayısını artırmak.Bu çok basit bir örnek ama genel bir fikir almak gerekir.
Teknik olarak, nasıl variadic fonksiyo...
# App C bir parça ne kadar süredir çal...
Ne kadar ciddi bu yeni ASP.NET güvenli...
Ne kadar basit makrolar platform/derle...
Neden git benim depo bu kadar büyük?...