URL-osoitteen normalisointi

URL-osoitteen normalisointi  on prosessi, jolla URL-osoite saatetaan yhtenäiseen muotoon. Normalisointiprosessin tarkoituksena on muuttaa URL-osoite normalisoituun muotoon kahden syntaktisesti erilaisen URL-osoitteen vastaavuuden määrittämiseksi. [yksi]

Hakukoneet käyttävät URL-osoitteen normalisointia vähentääkseen päällekkäisten sivujen indeksointia ja asettaakseen sivut tärkeysjärjestykseen. Hakurobotit suorittavat URL-osoitteen normalisoinnin välttääkseen resurssin uudelleenindeksoinnin. Selaimet voivat suorittaa normalisoinnin määrittääkseen, onko käynti tapahtunut vai onko sivu välimuistissa.

URL-osoitteeseen voidaan soveltaa useita normalisointityyppejä: jotkut säilyttävät alkuperäisen osoitteen , toiset eivät .

Normalisointiprosessi

Normalisoinnit, jotka säilyttävät alkuperäisen oikeinkirjoituksen

Alla luetellut normalisointimenetelmät on kuvattu standardissa RFC 3986 [2] ja ne johtavat vastaaviin URL-osoitteisiin.

HTTP://www.Example.com/→http://www.example.com/ http://www.example.com/a%c2%b1b→http://www.example.com/a%C2%B1b http://www.example.com/%7Eusername/→http://www.example.com/~username/ http://www.example.com:80/bar.html→http://www.example.com/bar.html

Normalisointi alkuperäisen oikeinkirjoituksen osittaisella säilyttämisellä

http- ja https-protokollien osalta seuraavat RFC 3986 -normalisoinnit voivat johtaa vastaaviin URL-osoitteisiin, mutta standardi ei takaa tätä.

http://www.example.com/alice→http://www.example.com/alice/ Ei kuitenkaan voida tietää, sisältääkö URL hakemistopolun vai ei. RFC 3986 sanoo, että jos alkuperäinen URL-osoite uudelleenohjaa normalisoituun URL-osoitteeseen, tämä on merkki vastaavuudesta . http://www.example.com/../a/b/../c/./d.html→http://www.example.com/a/c/d.html

Normalisoinnit, jotka muuttavat oikeinkirjoitusta

Käytetään seuraavia normalisointimenetelmiä, jotka johtavat samaan resurssiin johtavien URL-osoitteiden eri kirjoitusasuihin:

http://www.example.com/default.asp→http://www.example.com/ http://www.example.com/a/index.html→http://www.example.com/a/ http://www.example.com/bar.html#section1→http://www.example.com/bar.html AJAX -sovellukset käyttävät kuitenkin usein muuttujia tällaisissa fragmenteissa, ja niiden poistaminen voi johtaa uudelleenohjaukseen toiseen resurssiin. http://208.77.188.166/→http://www.example.com/ Käänteinen korvaaminen on harvoin turvallista virtuaalisten verkkopalvelimien käytön vuoksi. https://www.example.com/→http://www.example.com/ http://www.example.com/foo//bar.html→http://www.example.com/foo/bar.html http://www.example.com/→http://example.com/ http://www.example.com/display?lang=en&article=fred→http://www.example.com/display?article=fred&lang=en URL-osoitteen parametrien järjestys voi kuitenkin olla merkittävä (standardien määrittelemätön) ja verkkopalvelin voi sallia muuttujien esiintymisen useita kertoja. [neljä] http://www.example.com/display?id=123&fakefoo=fakebar→http://www.example.com/display?id=123 Parametri ilman arvoa ei tarkoita, että parametria ei käytetä. http://www.example.com/display?id=&sort=ascending→http://www.example.com/display http://www.example.com/display?→http://www.example.com/display

Normalisointi URL-luetteloiden perusteella

Joitakin normalisointisääntöjä voidaan kehittää tietyille verkkosivustoille tarkastelemalla lokin tai palvelimen lokien aikaisemmista tarkistuksista saatuja URL-luetteloita. Jos esimerkiksi URL-osoite

http://foo.org/story?id=xyz

näkyy lokissa useita kertoja yhdessä

http://foo.org/story_xyz

voidaan olettaa, että nämä kaksi URL-osoitetta ovat samanarvoisia ja ne voidaan normalisoida jompaankumpaan muotoon.

Sconfeld ym. vuonna 2006 [5] esittelivät DustBuster-heuristisen järjestelmän, joka havaitsee DUST:t (eri URL-osoitteet, joilla on samanlainen teksti), jotka ovat sääntöjä, joita voidaan soveltaa URL-luetteloihin. He osoittivat, että kun oikeat DUST-säännöt löydettiin ja niitä sovellettiin normalisointialgoritmeihin, he pystyivät löytämään jopa 68 % redundanteista URL-osoitteista URL-luetteloista.

Katso myös

Muistiinpanot

  1. RFC3986, 2005 , jakso 6, s. 38.
  2. RFC3986, 2005 .
  3. RFC3986, 2005 , kohta 2.3.
  4. Ben, 2009 .
  5. DUST2006, 2006 , s. 1015-1016.

Kirjallisuus