Sərin URI-lər dəyişmir

Müəllif: Ser Tim Berners-Li, URI, URL-lər, HTTP, HTML və World Wide Web-in ixtiraçısı və W3C-nin hazırkı rəhbəri. 1998-ci ildə yazılmış məqalə

Hansı URI "sərin" hesab olunur?
Dəyişməyən biri.
URI-lər necə dəyişdirilir?
URI-lər dəyişmir: insanlar onları dəyişir.

Teorik olaraq, insanların URI-ləri dəyişdirmək (və ya dəstəkləyici sənədləri dayandırmaq) üçün heç bir səbəb yoxdur, amma praktikada milyonlarla var.

Teorik olaraq, bir domen ad sahəsinin nominal sahibi əslində domen ad sahəsinə və buna görə də onun içindəki bütün URI-lərə sahibdir. Müflisləşmədən başqa heç bir şey domen adının sahibinə adı saxlamağa mane olmur. Və nəzəri olaraq, domen adınız altında URI məkanı tamamilə sizin nəzarətinizdədir, ona görə də onu istədiyiniz qədər sabit edə bilərsiniz. Sənədin internetdən yoxa çıxmasının demək olar ki, yeganə yaxşı səbəbi domen adına sahib olan şirkətin işdən çıxması və ya artıq serveri işlək vəziyyətdə saxlamaq imkanına malik olmamasıdır. Bəs niyə dünyada bu qədər çatışmayan linklər var? Bunlardan bəziləri sadəcə qabaqcadan düşünməməkdir. Eşitdiyiniz bəzi səbəblər bunlardır:

Biz sadəcə saytı daha yaxşı etmək üçün yenidən təşkil etdik.

Siz həqiqətən köhnə URI-lərin artıq işləyə bilməyəcəyini düşünürsünüz? Əgər belədirsə, onda siz onları çox pis seçmisiniz. Növbəti yenidən dizayn üçün yenilərini saxlamağı düşünün.

Bizdə o qədər çox şey var ki, nəyin köhnəldiyini, nəyin məxfi olduğunu və nəyin hələ də aktual olduğunu izləyə bilmirik, ona görə də hamısını söndürməyi daha yaxşı hesab etdik.

Mən yalnız simpatiya edə bilərəm. W3C elə bir dövrdən keçdi ki, biz arxiv materiallarını ictimaiyyətə təqdim etməzdən əvvəl məxfilik üçün diqqətlə nəzərdən keçirməli olduq. Qərar əvvəlcədən yaxşı düşünülməlidir - hər bir sənəddə məqbul oxucu auditoriyasını, yaradılma tarixini və ideal olaraq istifadə müddətini müəyyənləşdirdiyinizə əmin olun. Bu metadatanı yadda saxlayın.

Bəli, biz faylları köçürməli olduğumuzu aşkar etdik...

Bu, ən acınacaqlı bəhanələrdən biridir. Çox adam bilmir ki, veb serverlər sizə obyektin URI-si ilə onun fayl sistemindəki faktiki yeri arasındakı əlaqəni idarə etməyə imkan verir. URI məkanını mükəmməl təşkil olunmuş abstrakt məkan kimi düşünün. Sonra onu reallaşdırmaq üçün istifadə etdiyiniz reallığın xəritəsini çəkin. Sonra bu barədə veb serverə məlumat verin. Siz hətta onu düzgün əldə etmək üçün öz server parçanızı yaza bilərsiniz.

Con artıq bu faylı saxlamır, Ceyn indi saxlayır.

URI-də Conun adı var idi? Xeyr, fayl sadəcə onun kataloqunda idi? Yaxşı, tamam.

Əvvəllər bunun üçün CGI skriptindən istifadə edirdik, indi isə binar proqramdan istifadə edirik.

Skriptlər tərəfindən yaradılan səhifələrin "cgibin" və ya "cgi" sahəsində yerləşməsi barədə dəli fikir var. Bu, veb serverinizi necə idarə etdiyinizin mexanikasını açır. Mexanizmi dəyişdirirsiniz (hətta məzmunu yadda saxlasanız da) və vay - bütün URI-ləriniz dəyişir.

Məsələn, Milli Elm Fondunu (NSF) götürək:

NSF Onlayn Sənədləri

http://www.nsf.gov/cgi-bin/pubsys/browser/odbrowse.pl

Sənədlərə baxmağa başlayan ilk səhifə bir neçə ildən sonra eyni qalmayacaq. cgi-bin, oldbrowse и pl - bütün bunlar indi necə edəcəyimiz haqqında məlumat verir. Sənədi axtarmaq üçün səhifədən istifadə etsəniz, əldə etdiyiniz ilk nəticə eyni dərəcədə pisdir:

Kriptologiya və Kodlaşdırma Nəzəriyyəsi üzrə İşçi Qrupun Hesabatı

http://www.nsf.gov/cgi-bin/getpub?nsf9814

html sənədinin özü daha yaxşı görünsə də, sənəd indeks səhifəsi üçün:

http://www.nsf.gov/pubs/1998/nsf9814/nsf9814.htm

Burada pub/1998 başlığı istənilən gələcək arxiv xidmətinə köhnə 1998-ci il sənəd təsnifat sxeminin qüvvədə olduğuna dair yaxşı ipucu verəcək. Sənəd nömrələri 2098-ci ildə fərqli görünsə də, mən təsəvvür edərdim ki, bu URI hələ də etibarlı olacaq və NSF və ya arxivi saxlayan hər hansı digər təşkilata müdaxilə etməyəcək.

URL-lərin davamlı olması lazım olduğunu düşünmürdüm - URN-lər var idi.

Bu, yəqin ki, URN müzakirəsinin ən pis yan təsirlərindən biridir. Bəzi insanlar daha qalıcı bir ad sahəsinə dair araşdırmalara görə, sallanan linklərə diqqətsiz ola biləcəyini düşünür, çünki "URN-lər bütün bunları düzəldəcək". Əgər siz də bu insanlardansınızsa, icazə verin sizi məyus edim.

Gördüyüm əksər URN sxemləri səlahiyyət identifikatoruna bənzəyir, ondan sonra seçdiyiniz tarix və sətir və ya sadəcə seçdiyiniz sətir. Bu HTTP URI-yə çox bənzəyir. Başqa sözlə, əgər təşkilatınızın uzunömürlü URN-lər yarada biləcəyini düşünürsünüzsə, onda HTTP URI-ləriniz üçün onlardan istifadə etməklə bunu indi sübut edin. HTTP-nin özündə URI-ni qeyri-sabit edən heç bir şey yoxdur. Yalnız təşkilatınız. Sənədin URN-ni cari fayl adına uyğunlaşdıran verilənlər bazası yaradın və veb serverə faylları faktiki olaraq geri qaytarmaq üçün ondan istifadə etsin.

Əgər bu nöqtəyə gəlib çatmısınızsa, bəzi proqram təminatı hazırlamaq üçün vaxtınız, pulunuz və əlaqəniz yoxdursa, o zaman aşağıdakı bəhanəni göstərə bilərsiniz:

Biz istəyirdik, ancaq düzgün alətlərimiz yoxdur.

Ancaq buna rəğbət bəsləyə bilərsiniz. Mən tamamilə razıyam. Etməli olduğunuz şey, veb serveri davamlı URI-ni dərhal təhlil etməyə məcbur etmək və faylı hazırda cari çılğın fayl sisteminizdə saxlandığı yerə qaytarmaqdır. Siz bütün URI-ləri çek kimi faylda saxlamaq və verilənlər bazasını hər zaman yeni saxlamaq istəyirsiniz. Siz eyni sənədin müxtəlif versiyaları və tərcümələri arasında əlaqəni qorumaq, həmçinin faylın təsadüfi xəta nəticəsində pozulmamasını təmin etmək üçün müstəqil yoxlama cəmi qeydini saxlamaq istəyirsiniz. Veb serverlər isə sadəcə olaraq bu xüsusiyyətlərlə qutudan çıxmır. Yeni sənəd yaratmaq istədiyiniz zaman redaktorunuz sizdən URI göstərməyinizi xahiş edir.

URI məkanında URI-ni dəyişmədən sahibliyi, sənəd girişini, arxiv səviyyəsinin təhlükəsizliyini və s. dəyişdirə bilməlisiniz.

Hər şey çox pisdir. Ancaq vəziyyəti düzəldəcəyik. W3C-də biz versiyaları izləyən Jigedit (Yapboz redaktə serveri) funksiyasından istifadə edir və sənəd yaratma skriptləri ilə sınaqdan keçiririk. Əgər alətlər, serverlər və müştərilər inkişaf etdirirsinizsə, bu məsələyə diqqət yetirin!

Bu bəhanə bir çox W3C səhifələrinə, o cümlədən bu səhifələrə də aiddir: elə mənim dediyim kimi edin, mənim etdiyim kimi yox.

Mən niyə qayğı göstərməliyəm?

Serverinizdə URI-ni dəyişdirdiyiniz zaman köhnə URI-yə kimin bağlantılarının olacağını heç vaxt tam deyə bilməzsiniz. Bunlar adi internet səhifələrindən keçidlər ola bilər. Səhifənizi işarələyin. URI dostuna məktubun kənarında cızılmış ola bilər.

Kimsə bir keçidi izlədikdə və o, pozulduqda, adətən server sahibinə etibarını itirirlər. O, həm emosional, həm də real olaraq məqsədinə çata bilmədiyi üçün məyus olur.

Bir çox insan hər zaman pozulmuş bağlantılardan şikayətlənir və ümid edirəm ki, zərər göz qabağındadır. Ümid edirəm ki, sənədin yoxa çıxdığı serverin texniki xidmətçisinin nüfuzuna dəyən ziyan da göz qabağındadır.

Bəs mən nə etməliyəm? URI dizaynı

2 il, 20 il, 200 ildən sonra istifadə edilə bilən URI-ləri ayırmaq vebmasterin məsuliyyətidir. Bunun üçün düşüncə, təşkilatçılıq və qətiyyət tələb olunur.

URI-lər onlarda hər hansı məlumat dəyişdikdə dəyişir. Onları necə dizayn etdiyiniz çox vacibdir. (Nə, URI dizaynı? Mən URI dizayn etməliyəmmi? Bəli, bu barədə düşünməlisiniz). Dizayn əsasən URI-də hər hansı bir məlumatı buraxmaq deməkdir.

Sənədin yaradıldığı tarix - URI-nin verildiyi tarix heç vaxt dəyişməyəcək bir şeydir. Yeni sistemdən istifadə edən sorğuları köhnə sistemdən istifadə edən sorğulardan ayırmaq üçün çox faydalıdır. Bu, URI ilə başlamaq üçün yaxşı yerdir. Əgər sənədə tarix qoyulubsa, hətta sənəd gələcəkdə aktual olacaqsa, bu yaxşı başlanğıcdır.

Yeganə istisna, məsələn, bütün təşkilat və ya onun böyük bir hissəsi üçün qəsdən "ən son" versiya olan bir səhifədir.

http://www.pathfinder.com/money/moneydaily/latest/

Bu, Money jurnalında ən son Money Daily sütunudur. Bu URI-də tarixə ehtiyacın olmamasının əsas səbəbi, jurnaldan daha uzun ömür sürəcək URI-ni saxlamaq üçün heç bir səbəbin olmamasıdır. Pul yox olanda Money Daily anlayışı yox olacaq. Məzmunla əlaqə yaratmaq istəyirsinizsə, arxivdə ayrıca ona keçid etməlisiniz:

http://www.pathfinder.com/money/moneydaily/1998/981212.moneyonline.html

(Yaxşı görünür. Güman edir ki, "pul" pathfinder.com-un bütün həyatı boyu eyni məna daşıyacaq. Dublikat "98" və lazımsız ".html" var, lakin əks halda güclü URI kimi görünür.

Nəyi bir kənara qoyub

Hamısı! Yaradılma tarixindən başqa, hər hansı bir məlumatın URI-yə qoyulması bu və ya digər şəkildə problem yaradır.

  • müəllifin adı. Yeni versiyalar mövcud olduqdan sonra müəlliflik dəyişə bilər. İnsanlar təşkilatları tərk edir və hər şeyi başqalarına ötürürlər.
  • Mövzu. Çox çətindir. Əvvəlcə həmişə yaxşı görünür, lakin təəccüblü dərəcədə tez dəyişir. Bu barədə aşağıda daha ətraflı danışacağam.
  • Vəziyyət. Bütün fayl sistemlərində "köhnə", "qaralama" və s. kimi kataloqlar, "ən son" və "sərin" deyilənlər var. Sənədlər statusu dəyişir - əks halda qaralama yaratmağın mənası olmazdı. Sənədin son versiyası statusundan asılı olmayaraq davamlı identifikatora ehtiyac duyur. Vəziyyəti addan uzaq tutun.
  • Giriş. W3C-də biz saytı işçilər, üzvlər və ictimaiyyət üçün bölmələrə ayırdıq. Bu, yaxşı səslənir, amma təbii ki, sənədlər işçi heyətinin komanda ideyaları kimi başlayır, üzvlərlə müzakirə olunur və sonra ictimaiyyətə məlum olur. Hər dəfə bir sənəd daha geniş müzakirə üçün açılanda ona bütün köhnə bağlantılar qırılırsa, həqiqətən ayıb olardı! İndi sadə bir tarix koduna keçirik.
  • Fayl uzantısı. Çox rast gəlinən bir hadisə. "cgi", hətta ".html" də gələcəkdə dəyişəcək. Siz 20 il ərzində bu səhifə üçün HTML istifadə etməyə bilərsiniz, lakin bugünkü linklər hələ də işləməlidir. W3C saytındakı kanonik bağlantılar genişləndirmədən istifadə etmir (necə edilir).
  • Proqram mexanizmləri. URI-də "cgi", "exec" və "hansı proqram təminatından istifadə etdiyimizə baxın" deyə qışqıran digər terminləri axtarın. Hər kəs bütün həyatını Perl CGI skriptləri yazmaqla keçirmək istəyir? Yox? Sonra .pl uzantısını çıxarın. Bunu necə etmək barədə server təlimatını oxuyun.
  • Disk adı. Hadi! Amma mən bunu görmüşəm.

Beləliklə, saytımızdan ən yaxşı nümunə sadəcədir

http://www.w3.org/1998/12/01/chairs

... W3C Sədrlərinin iclasının protokolu haqqında hesabat.

Mövzular və mövzuya görə təsnifat

Bu təhlükə haqqında daha ətraflı danışacağam, çünki qarşısını almaq ən çətin olan şeylərdən biridir. Bir qayda olaraq, sənədlərinizi gördükləri işə görə kateqoriyalara ayırdığınız zaman mövzular URI-lərdə bitir. Ancaq bu parçalanma zamanla dəyişəcək. Ərazilərin adları dəyişəcək. W3C-də bölmənin faktiki məzmununu əks etdirmək üçün MarkUP-u Markup-a, sonra isə HTML-yə dəyişmək istədik. Bundan əlavə, tez-tez düz ad sahəsi var. 100 ildən sonra heç nəyi təkrar istifadə etmək istəməyəcəyinizə əminsinizmi? Qısa həyatımızda, məsələn, "Tarix" və "Üslub vərəqləri" ni yenidən istifadə etmək istəyirik.

Bu, veb-saytı təşkil etmək üçün cazibədar bir yoldur və hər şeyi, o cümlədən bütün İnterneti təşkil etmək üçün həqiqətən cəlbedici bir yoldur. Bu, orta müddətli əla həlldir, lakin uzunmüddətli perspektivdə ciddi çatışmazlıqlara malikdir.

Səbəbin bir hissəsi məna fəlsəfəsindədir. Dildəki hər bir termin qruplaşma üçün potensial hədəfdir və hər bir insanın bunun nə demək olduğu barədə fərqli təsəvvürü ola bilər. Müəssisələr arasındakı əlaqələr ağacdan daha çox şəbəkəyə bənzədiyi üçün hətta internetlə razılaşanlar belə ağacın fərqli təsvirini seçə bilərlər. Bunlar ümumi həll yolu kimi iyerarxik təsnifatın təhlükələri haqqında mənim (tez-tez təkrarlanan) ümumi müşahidələrimdir.

Əslində, URI-də bir mövzu adından istifadə edərkən, özünüzü bir növ təsnifata bağlamış olursunuz. Bəlkə də gələcəkdə fərqli bir seçimə üstünlük verəcəksiniz. URI bundan sonra pozuntuya həssas olacaq.

Mövzu sahəsindən URI-nin bir hissəsi kimi istifadə edilməsinin səbəbi ondan ibarətdir ki, URI məkanının alt bölmələri üçün məsuliyyət adətən həvalə olunur və sonra sizə həmin alt məkan üçün cavabdeh olan təşkilati orqanın - şöbə, qrup və ya hər hansı bir ad lazımdır. Bu, təşkilati strukturu bağlayan URI-dir. Adətən yalnız sonrakı (solda) URI bir tarixlə qorunduğu halda təhlükəsizdir: 1998/şəkillər serveriniz üçün “1998-ci ildə indi şəkil adlandırdığımız şeylə nə etdik” deyil, “1998-ci ildə şəkillərlə nəyi nəzərdə tuturduq” mənasını verə bilər.

Domen adını unutmayın

Unutmayın ki, bu, yalnız URI-dəki yola deyil, həm də server adına aiddir. Fərqli şeylər üçün ayrıca serverləriniz varsa, unutmayın ki, bir çox, çoxlu bağlantıları məhv etmədən bu bölməni dəyişdirmək mümkün olmayacaq. Bəzi klassik "bu gün istifadə etdiyimiz proqram təminatına baxın" səhvləri "cgi.pathfinder.com", "secure", "lists.w3.org" domen adlarıdır. Onlar server idarəçiliyini asanlaşdırmaq üçün nəzərdə tutulmuşdur. Domenin şirkətinizdə bir bölməni, sənəd statusunu, giriş səviyyəsini və ya təhlükəsizlik səviyyəsini təmsil etməsindən asılı olmayaraq, birdən çox sənəd növü üçün birdən çox domen adından istifadə etməzdən əvvəl çox və çox diqqətli olun. Yadda saxlayın ki, yönləndirmə və proksidən istifadə edərək birdən çox veb serveri bir görünən veb server daxilində gizlədə bilərsiniz.

Oh, həm də domen adınız haqqında düşünün. Məhsul xəttini dəyişdikdən və sabun istehsalını dayandırdıqdan sonra soap.com kimi xatırlanmaq istəmirsiniz (Hazırda soap.com-un sahibi olan hər kəsdən üzr istəyirəm).

Nəticə

URI-ni 2, 20, 200 və ya hətta 2000 il saxlamaq göründüyü qədər asan deyil. Bununla belə, bütün İnternetdə veb ustaları gələcəkdə bu işi özləri üçün həqiqətən çətinləşdirən qərarlar qəbul edirlər. Çox vaxt bunun səbəbi, işi yalnız hazırda ən yaxşı saytı təqdim etmək olan vasitələrdən istifadə etmələridir - və heç kim hər şey dəyişdikdə bağlantıların nə olacağını qiymətləndirməmişdir. Bununla belə, buradakı məqam ondan ibarətdir ki, çox, çox şey dəyişə bilər və URI-ləriniz eyni qala bilər və qalmalıdır. Bu, yalnız onları necə yaratdığınız barədə düşünəndə mümkündür.

Həmçinin baxın:

Əlavələr

Fayl uzantılarını necə silmək olar...

... cari fayl əsaslı veb serverdə URI-dən?

Məsələn, Apache-dən istifadə edirsinizsə, onu məzmunu müzakirə etmək üçün konfiqurasiya edə bilərsiniz. Fayl uzantısını (məsələn, .png) faylda (məs. mydog.png), lakin siz onsuz da veb resursa keçid edə bilərsiniz. Daha sonra Apache həmin ada və istənilən uzantıya malik bütün fayllar üçün kataloqu yoxlayır və dəstdən ən yaxşısını seçə bilər (məsələn, GIF və PNG). Və müxtəlif qovluqlarda müxtəlif növ faylları yerləşdirməyə ehtiyac yoxdur, əslində məzmun uyğunluğu bunu etsəniz işləməyəcək.

  • Məzmunu müzakirə etmək üçün serverinizi qurun
  • Həmişə uzantısız URI-lərə keçid edin

Genişlənmələri olan bağlantılar hələ də işləyəcək, lakin serverinizin hazırda və gələcəkdə mövcud olan ən yaxşı formatı seçməsinə mane olacaq.

(Faktiki olaraq, mydog, mydog.png и mydog.gif - etibarlı veb resursları, mydog universal məzmun tipli resursdur və mydog.png и mydog.gif — xüsusi məzmun tipli resurslar).

Əlbəttə ki, əgər siz öz veb serverinizi yazırsanız, verilənlər bazasının limitsiz artımından ehtiyatlansanız da, davamlı identifikatorları cari formalarına bağlamaq üçün verilənlər bazasından istifadə etmək yaxşı fikirdir.

Utanc Şurası - Hekayə 1: Kanal 7

1999-cu ildə mən səhifədə qarla əlaqədar məktəblərin bağlanmasını izlədim http://www.whdh.com/stormforce/closings.shtml. Məlumatın televizor ekranının aşağı hissəsində görünməsini gözləməyin! Ana səhifəmdən ona keçid verdim. 2000-ci ilin ilk böyük qar fırtınası gəlir və mən səhifəni yoxlayıram. Orada yazılıb:,

- Bu günə kimi.
Hazırda heç nə bağlanmayıb. Zəhmət olmasa hava xəbərdarlığı zamanı geri qayıdın.

Bu qədər güclü fırtına ola bilməz. Maraqlıdır ki, tarix yoxdur. Ancaq saytın əsas səhifəsinə daxil olsanız, səhifəyə aparan böyük bir "Qapalı Məktəblər" düyməsi olacaq. http://www.whdh.com/stormforce/ bağlanan məktəblərin uzun siyahısı ilə.

Ola bilsin ki, onlar siyahı əldə etmək üçün sistemi dəyişiblər - lakin URI-ni dəyişməyə ehtiyac yox idi.

Utanc Şurası - Hekayə 2: Microsoft Netmeeting

İnternetdən asılılığın artması ilə, istehsalçının veb saytına keçidlərin tətbiqlərə daxil edilə biləcəyi barədə ağıllı bir fikir gəldi. Bu, çox istifadə edilib və sui-istifadə edilib, lakin siz URL-i dəyişə bilməzsiniz. Elə bu günlərdə mən Microsoft Netmeeting 2/bir şey müştərisindən Veb/Pulsuz əşyalar menyusunda Help/Microsoft-da keçidi sınadım və 404 xətası aldım – serverdən heç bir cavab tapılmadı. Bəlkə də artıq düzəldilib...

© 1998 Tim BL

Tarixi qeyd: 20-ci əsrin sonlarında, bu yazıldığı zaman, "sərin" xüsusilə gənclər arasında dəb, keyfiyyət və ya uyğunluğu göstərən təsdiq epiteti idi. Tələsik, URI yolu çox vaxt faydalılıq və ya davamlılıqdan daha çox "sərinlik" üçün seçilirdi. Bu yazı sərin axtarışının arxasındakı enerjini yönləndirmək cəhdidir.

Mənbə: www.habr.com

Добавить комментарий