XML-format i webbplatskartor

Gå till:
Definitioner av XML-taggar
Ersättningskodning
Använda indexfiler för webbplatskartor
Andra format för webbplatskartor
Placering av webbplatskartfiler
Utvärdera din webbplatskarta
Utöka protokollet för webbplatskartor
Informera sökrobotar i sökmotorer

Det här dokumentet beskriver XML-schemat för protokollet för webbplatskartor.

Protokollet för webbplatskartan innehåller XML-taggar. Alla datavärden i en webbplatskarta måste vara ersättningskodade. Själva filen måste vara UTF-8-kodad.

Webbplatskartan måste

Alla övriga taggar är valfria. Stödet för dessa valfria taggar kan variera mellan olika sökmotorer. Mer information finns i dokumentationen till den aktuella sökmotorn.

Dessutom måste alla URL:er i en webbplatskarta komma från en och samma värd, t.ex. www.example.com eller store.example.com. Mer information hittar du i Placering av webbplatskartfiler.

Exempel på webbplatskarta i XML-format

Följande exempel visar en webbplatskarta som innehåller en enda URL och alla valfria taggar. De valfria taggarna är kursiverade.


<?xml version="1.0" encoding="UTF-8"?>

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

   <url>

      <loc>http://www.example.com/</loc>

      <lastmod>2005-01-01</lastmod>

      <changefreq>monthly</changefreq>

      <priority>0,8</priority>

   </url>

</urlset> 

Se även exemplet med flera URL:er.

Definitioner av XML-taggar

De tillgängliga XML-taggarna beskrivs nedan.

Attribut Beskrivning
<urlset> obligatoriskt

Kapslar in filen och hänvisar till aktuell protokollstandard.

<url> obligatoriskt

Rottagg för varje URL-post. Resterande taggar är underordnade denna tagg.

<loc> obligatoriskt

Sidans URL. Den här URL:en måste inledas med protokollet (t.ex. http) och avslutas med ett snedstreck, om webbservern kräver det. Värdet måste bestå av färre än 2 048 tecken.

<lastmod> valfritt

Datum för senaste ändring av filen. Datumet ska ha W3C Datetime-format. Med detta format kan du utelämna tidsdelen och använda ÅÅÅÅ-MM-DD.

Observera att datumet måste anges till det datum då den länkade sidan senast ändrades, inte när webbplatskartan genereras.

Observera att taggen skiljer sig från rubriken If-Modified-Since (304) som servern kan returnera. Det kan hända att sökmotorer använder informationen från de båda källorna på olika sätt.

<changefreq> valfritt

Hur ofta sidan troligen kommer att ändras. Detta värde förser sökmotorer med allmän information och kanske inte stämmer exakt med hur ofta de genomsöker sidan. Giltiga värden är:

  • always
  • hourly
  • daily
  • weekly
  • monthly
  • yearly
  • never

Värdet "always" ska användas för att beskriva dokument som ändras varje gång de öppnas. Värdet "never" ska användas för att beskriva arkiverade URL:er.

Observera att värdet på denna tagg räknas som ett tips och inte ett kommando. Även om sökrobotar kan ta hänsyn till denna information kan de genomsöka sidor som märkts med ”hourly” mer sällan än så, och de kan genomsöka sidor som märkts med ”yearly” oftare än så. Sökrobotarna kan även genomsöka sidor som märkts med ”never” så att de kan hantera oväntade ändringar på dessa sidor.

<priority> valfritt

Denna URL:s prioritet i förhållande till andra adresser på din webbplats. Giltiga värden är mellan 0,0 och 1,0. Värdet påverkar inte hur dina sidor jämförs med sidor på andra webbplatser. Det informerar bara sökmotorerna om vilka sidor du anser vara viktigast för sökrobotarna.

Standardprioriteten för en sida är 0,5.

Observera att prioriteten som du tilldelar en sida förmodligen inte påverkar dina URL:ers placering på en sökmotors resultatsidor. Sökmotorerna kan använda denna information när de väljer mellan URL:er på samma webbplats, så du kan använda denna tagg för att öka sannolikheten för att dina viktigaste sidor visas i ett sökindex.

Observera dessutom att det förmodligen inte hjälper att ge alla URL:er på din webbplats hög prioritet. Eftersom prioriteten är relativ, används den bara för att välja mellan URL:er på webbplatsen.

Tillbaka till början

Ersättningskodning

Webbplatskartfilen måste vara UTF-8-kodad (du kan vanligtvis ange detta när du sparar filen). Som med alla XML-filer måste alla datavärden (inklusive URL:er) använda ersättningskoder (HTML-tecken) för de tecken som anges i tabellen nedan.

Tecken Ersättningskod
Et-tecken & &amp;
Enkla citattecken ' &apos;
Dubbla citattecken " &quot;
Större än > &gt;
Mindre än < &lt;

Dessutom måste alla URL:er (inklusive adressen till webbplatskartan) vara adresskodade och kodade för läsbarhet av den webbserver där de finns. Om du använder någon typ av skript, verktyg eller loggfil för att skapa dina URL:er (d.v.s. allt utom att skriva in dem för hand) är det vanligtvis redan gjort. Kontrollera att alla URL:er följer RFC-3986-standarden för URI:er, RFC-3987-standarden för IRI:er samt XML-standarden.

Nedan följer ett exempel på en URL som använder ett icke-ASCI-tecken (ü) samt ett tecken som kräver ersättningskodning (&):

http://www.example.com/ümlat.html&q=name

Nedan finns samma URL som ISO-8859-1-kodad (för placering på en server som använder denna kodning) och med ersatt adresskodning:

http://www.example.com/%FCmlat.html&q=name

Nedan finns samma URL, UTF-8-kodad (för placering på en server som använder denna kodning) och med ersatt adresskodning:

http://www.example.com/%C3%BCmlat.html&q=name

Nedan finns samma URL, även ersättningskodad:

http://www.example.com/%C3%BCmlat.html&amp;q=name

Exempel på webbplatskarta i XML-format

Följande är ett exempel på en webbplatskarta i XML-format. Webbplatskartan i exemplet innehåller ett fåtal URL:er, som alla innehåller olika valfria parametrar.


<?xml version="1.0" encoding="UTF-8"?>

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

   <url>

      <loc>http://www.example.com/</loc>

      <lastmod>2005-01-01</lastmod>

      <changefreq>monthly</changefreq>

      <priority>0.8</priority>

   </url>

   <url>

      <loc>http://www.example.com/catalog?item=12&amp;desc=vacation_hawaii</loc>

      <changefreq>weekly</changefreq>

   </url>

   <url>

      <loc>http://www.example.com/catalog?item=73&amp;desc=vacation_new_zealand</loc>

      <lastmod>2004-12-23</lastmod>

      <changefreq>weekly</changefreq>

   </url>

   <url>

      <loc>http://www.example.com/catalog?item=74&amp;desc=vacation_newfoundland</loc>

      <lastmod>2004-12-23T18:00:15+00:00</lastmod>

      <priority>0.3</priority>

   </url>

   <url>

      <loc>http://www.example.com/catalog?item=83&amp;desc=vacation_usa</loc>

      <lastmod>2004-11-23</lastmod>

   </url>

</urlset>

Tillbaka till början

Använda indexfiler för webbplatskartor (för att gruppera flera webbplatskartfiler)

Du kan tillhandahålla flera webbplatskartfiler, men de får inte innehålla fler än 50 000 URL:er vardera och får inte vara större än 50 MB (52 428 800 byte). Du kan komprimera webbplatskartfilerna med gzip för att minska kravet på bandbredd, men de okomprimerade webbplatskartfilerna får inte vara större än 50 MB. Om du vill ange fler än 50 000 URL:er måste du skapa flera webbplatskartfiler.

Om du skickar in flera webbplatskartor måste du ange varje fil i en indexfil för webbplatskarta. Indexfiler för webbplatskartor får inte innehålla fler än 50 000 webbplatskartor och får inte vara större än 50 MB (52 428 800 byte) samt kan vara komprimerade. Du kan ha mer än en indexfil för webbplatskarta. XML-formatet i en indexfil för webbplatskartor påminner mycket om XML-formatet i en webbplatskartfil.

Indexfilen för webbplatskartan måste

Den valfria taggen <lastmod> finns också för indexfiler för webbplatskartor.

Obs! En indexfil för webbplatskartor kan endast ange webbplatskartor som finns på samma webbplats som indexfilen. Exempelvis kan http://www.dinwebbplats.com/sitemap_index.xml inkludera webbplatskartor på http://www.dinwebbplats.com men inte på http://www.example.com eller http://dinvärd.dinwebbplats.com. Precis som med webbplatskartorna måste indexfilen vara UTF-8-kodad.

Exempel på XML-index för webbplatskarta

Följande är ett exempel på ett index för webbplatskarta med två webbplatskartor:


<?xml version="1.0" encoding="UTF-8"?>

<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

   <sitemap>

      <loc>http://www.example.com/sitemap1.xml.gz</loc>

      <lastmod>2004-10-01T18:23:17+00:00</lastmod>

   </sitemap>

   <sitemap>

      <loc>http://www.example.com/sitemap2.xml.gz</loc>

      <lastmod>2005-01-01</lastmod>

   </sitemap>

</sitemapindex>

Obs URL:er för webbplatskartor, liksom alla värden i dina XML-filer, måste vara ersättningskodade.

Definitioner av XML-taggar i index för webbplatskarta

Attribut Beskrivning
<sitemapindex> obligatoriskt Kapslar in information om alla webbplatskartor i filen.
<sitemap> obligatoriskt Kapslar in information om en enskild webbplatskarta.
<loc> obligatoriskt

Identifierar platsen för webbplatskartan.

Platsen kan vara en webbplatskarta, en Atom-fil, en RSS-fil eller en enkel textfil.

<lastmod> valfritt

Identifierar tiden då den motsvarande webbplatskartfilen ändrades. Motsvarar inte tiden då någon av sidorna som anges i webbplatskartan ändrades. Värdet för taggen lastmod ska ha W3C Datetime-format.

Genom att ange tidstämpeln för den senaste ändringen möjliggör du för sökrobotar att hämta endast vissa av webbplatskartorna i indexet. En sökrobot hämtar alltså kanske bara de webbplatskartor som har ändrats efter ett visst datum. Denna inkrementella hämtningsmekanism gör det möjligt att snabbt upptäcka nya URL:er på mycket stora webbplatser.

Tillbaka till början

Andra format för webbplatskartor

Protokollet för webbplatskartor gör det möjligt att ange information om dina sidor för sökmotorer och vi uppmuntrar dig att använda det, eftersom du kan ange ytterligare uppgifter om webbplatsens sidor och inte bara deras adresser. Utöver XML-protokollet stöder vi emellertid dessutom RSS-feeds och textfiler, som innehåller mer begränsade uppgifter.

Syndikeringsfeed

Du kan tillhandahålla en RSS 2.0-feed (Real Simple Syndication) eller en Atom 0.3- eller 1.0-feed. Vanligtvis använder du endast det här formatet om din webbplats redan har en syndikeringsfeed. Observera att den här metoden kanske inte räcker för att sökmotorerna ska få reda på samtliga URL:er på din webbplats, eftersom denna feed kanske bara innehåller information om nyare URL:er. Sökmotorerna kan emellertid använda informationen för att hitta andra sidor på webbplatsen under den normala genomsökningen genom att följa länkar på feedsidorna. Kontrollera att denna feed finns på den högsta katalognivån som du vill att sökmotorerna ska genomsöka. Så här hämtar sökmotorer information från en feed:

Textfil

Du kan tillhandahålla en enkel textfil med en URL per rad. Textfilen måste följa dessa riktlinjer:

Exempel på textfilposter visas nedan.

http://www.example.com/catalog?item=1


http://www.example.com/catalog?item=11

Tillbaka till början

Placering av webbplatskartfiler

Webbplatskartfilens placering avgör vilka URL:er som kan inkluderas i webbplatskartan. En webbplatskartfil på http://example.com/catalog/sitemap.xml kan innehålla URL:er som börjar med http://example.com/catalog/ men inte URL:er som börjar med http://example.com/images/.

Om du har behörighet att ändra http://example.org/path/sitemap.xml antas det att du även har behörighet att ge information om URL:er med prefixet http://example.org/path/. Några exempel på URL:er som anses giltiga i http://example.com/catalog/sitemap.xml:


http://example.com/catalog/show?item=23

http://example.com/catalog/show?item=233&user=3453

URL:er som betraktas som giltiga i http://example.com/catalog/sitemap.xml:


http://example.com/image/show?item=23

http://example.com/image/show?item=233&user=3453

https://example.com/catalog/page1.html

Observera att detta innebär att alla URL:er i webbplatskartan måste använda samma protokoll (i det här exemplet http) och lagras på samma värd som webbplatskartan. Om webbplatskartan exempelvis finns på http://www.example.com/sitemap.xml kan den inte innehålla URL:er från http://subdomain.example.com.

URL:er som inte anses giltiga har uteslutits från ytterligare utvärdering. Vi rekommenderar att du placerar webbplatskartan i rotkatalogen på webbservern. Om webbservern exempelvis finns på example.com, kommer indexfilen för webbplatskartan att finnas på http://example.com/sitemap.xml. I vissa fall kanske du behöver skapa olika webbplatskartor för olika sökvägar (exempelvis om säkerhetsbehörigheter i din organisation kategoriserar skrivåtkomst till olika kataloger).

Om du skickar in en webbplatskarta med en sökväg och ett portnummer, måste du ta med portnumret i sökvägen i varje URL i webbplatskartfilen. Om webbplatskartan exempelvis finns på adressen http://www.example.com:100/sitemap.xml måste varje URL i webbplatskartan inledas med http://www.example.com:100.

Webbplatskartor och korssändningar

Om du vill skicka webbplatskartor för flera värdar från en enda värd, måste du bevisa ägarskapet av värdarna för vilka URL:er skickas i en webbplatskarta. Här följer ett exempel: Antag att du vill skicka webbplatskartor för 3 värdar:


www.host1.com med webbplatskartfilen sitemap-host1.xml

www.host2.com med webbplatskartfilen sitemap-host2.xml

www.host3.com med webbplatskartfilen sitemap-host3.xml

Du vill dessutom placera alla tre webbplatskartorna på en och samma värd: www.sitemaphost.com. URL:erna för webbplatskartorna blir alltså:


http://www.sitemaphost.com/sitemap-host1.xml

http://www.sitemaphost.com/sitemap-host2.xml

http://www.sitemaphost.com/sitemap-host3.xml

Som standard resulterar detta i ett korssändningsfel, eftersom du försöker skicka URL:er för www.host1.com via en webbplatskarta med www.sitemaphost.com som värd (samma gäller för de andra två värdarna). Ett sätt att undvika detta fel är att bevisa att du äger (har behörighet att ändra filer på) www.host1.com. Du kan göra det genom att modifiera filen robots.txt på www.host1.com till att peka till webbplatskartan på www.sitemaphost.com.

I det här exemplet ska filen robots.txt på http://www.host1.com/robots.txt innehålla raden "Webbplatskarta: http://www.sitemaphost.com/sitemap-host1.xml". Genom att modifiera filen robots.txt på www.host1.com och göra så att den pekar till webbplatskartan på www.sitemaphost.com, har du implicit bevisat att du äger www.host1.com. Den som hanterar filen robots.txt på www.host1.com förlitar sig med andra ord på att webbplatskartan på http://www.sitemaphost.com/sitemap-host1.xml ska innehålla URL:er för www.host1.com. Samma process kan upprepas för de andra två värdarna.

Nu kan du skicka webbplatskartorna på www.sitemaphost.com.

När filen robots.txt för en viss värd, t.ex. http://www.host1.com/robots.txt, pekar till en webbplatskarta eller ett index för webbplatskarta på en annan värd, förväntas för alla målets webbplatskartor, t.ex. http://www.sitemaphost.com/sitemap-host1.xml, att alla URL:er som tillhör värden pekar på den. Detta beror på att webbplatskartor endast förväntas ha URL:er från en värd.

Tillbaka till början

Utvärdera din webbplatskarta

Följande XML-scheman definierar de element och attribut som kan visas i din webbplatskartfil. Du kan hämta detta schema från länken nedan:

För webbplatskartor: http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd
För indexfiler för webbplatskartor: http://www.sitemaps.org/schemas/sitemap/0.9/siteindex.xsd

Det finns ett antal verktyg som du kan använda för att utvärdera strukturen på din webbplatskarta baserat på detta schema. En lista med XML-relaterade verktyg finns på följande platser:

http://www.w3.org/XML/Schema#Tools
http://www.xml.com/pub/a/2000/12/13/schematools.html

För att kunna utvärdera din webbplatskarta eller indexfil för webbplatskarta mot ett schema, behöver XML-filen ytterligare rubriker (se nedan).

Webbplatskarta:


<?xml version='1.0' encoding='UTF-8'?>

<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

         xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"

         xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

   <url>

      ...

   </url>

</urlset>

Indexfil för webbplatskarta:


<?xml version='1.0' encoding='UTF-8'?>

<sitemapindex xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

         xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/siteindex.xsd"

         xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

   <sitemap>

      ...

   </sitemap>

</sitemapindex>

Tillbaka till början

Utöka protokollet för webbplatskartor

Du kan utöka protokollet för webbplatskartor med ditt eget namnutrymme. Ange helt enkelt namnutrymmet i rotelementet, t.ex:


<?xml version='1.0' encoding='UTF-8'?>

<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

         xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"

         xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"

         xmlns:example="http://www.example.com/schemas/example_schema"> <!-- namespace extension -->

   <url>

      <example:example_tag>

         ...

      </example:example_tag>

      ...

   </url>

</urlset>

Tillbaka till början

Informera sökrobotar i sökmotorer

När du har skapat webbplatskartfilen och placerat den på webbservern, måste du informera sökmotorerna som hanterar protokollet om webbplatskartfilens placering. Det kan du göra genom att

Sökmotorerna kan då hitta din webbplatskarta och göra URL:erna tillgängliga för sina sökrobotar.

Skicka en webbplatskarta via sökmotorns anmälningsgränssnitt

Vill du skicka webbplatskartan direkt till en sökmotor, så att du kan få statusuppgifter och se eventuella fel i hanteringen, måste du läsa sökmotorns dokumentation.

Ange var webbplatskartan finns i robots.txt-filen.

Du kan ange var webbplatskartan finns med en robots.txt-fil. Det gör du helt enkelt genom att lägga till följande rad:

Sitemap: http://www.example.com/sitemap.xml

Det här direktivet är oberoende av raden user-agent, så det spelar ingen roll var du infogar det i filen. Om du har en indexfil för en webbplatskarta, kan du ange var enbart den filen finns. Du behöver inte ange varje enskild webbplatskarta som finns med i indexfilen.

Du kan ange mer än en webbplatskartfil för varje robots.txt-fil.

Sitemap: http://www.example.com/sitemap-host1.xml

Sitemap: http://www.example.com/sitemap-host2.xml

Skicka en webbplatskarta genom en HTTP-begäran

Om du vill skicka en webbplatskarta genom en HTTP-begäran (ersätt <searchengine_URL> med sökmotorns URL) ska du skicka begäran till följande adress:

<searchengine_URL>/ping?sitemap=sitemap_url

Om din webbplatskarta exempelvis finns på http://www.example.com/sitemap.gz blir URL:en:

<searchengine_URL>/ping?sitemap=http://www.example.com/sitemap.gz

URL-koda allting efter /ping?sitemap=:

<searchengine_URL>/ping?sitemap=http%3A%2F%2Fwww.dinwebbplats.com%2Fsitemap.gz

Du kan skicka HTTP-begäran med wget, curl eller en annan valfri mekanism. Svarskoden HTTP 200 skickas tillbaka om begäran går att uppfylla. Om du får ett annat svar bör du skicka en ny begäran. Svarskoden HTTP 200 visar endast att sökmotorn har tagit emot webbplatskartan och inte att den eller URL:erna i den var giltiga. Ett enkelt sätt att göra det är att skapa ett automatiskt jobb som regelbundet skapar och skickar webbplatskartor.
Obs! Om du tillhandahåller en indexfil för webbplatskartor behöver du bara skicka en HTTP-begäran som innehåller indexfilens plats. Du behöver inte skicka separata förfrågningar för varje webbplatskarta i indexet.

Tillbaka till början

Exkludera innehåll

Protokollet för webbplatskartor gör det möjligt att informera sökmotorer om vilket innehåll du vill ha indexerat. Om du vill instruera sökmotorerna att inte indexera visst material ska du använda en robots.txt-fil eller metataggen robots. Mer information om hur du undantar material från sökmotorer finns på robotstxt.org.

 

Tillbaka till början

Senast uppdaterad: 21 november 2016