Nylig har jeg aktivert alle serverne mine til å betjene alt over HTTP og HTTPS. Brukere kan få tilgang til hvilket som helst nettsted via http://www.example.com eller https://www.example.com. Alle sidene er identiske mellom versjonene, så http://www.example.com/about.php er det samme som https://www.example.com/about.php og så videre.

URL-er er relative, så de nevner ikke protokollen med ett unntak. Med andre ord, hvis siden er lastet med HTTP, vil den lenke til andre sider, bilder, CSS, Javascript over HTTP og det samme med HTTPS, for å unngå advarsler om blandet innhold.

Nå om det unntaket. Det er i robots.txt:

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

Tilsynelatende må denne URL-en være absolutt.

Nå er problemet jeg ser om det når Google leser https://www.example.com/robots.txt, det får et HTTP-sitemap! Dokumentasjonen på robots.org sier at man kan spesifisere flere nettstedskart, men hvis jeg ikke er sikker på at det er en god idé å sette både HTTP- og HTTPS-nettstedskartet, siden de vil inneholde hver en liste med identiske sider (en med HTTP og en med HTTPS) .

Hvordan skal Sitemap i robots.txt håndteres for nettsteder som godtar HTTP og HTTPS?

Noen ideer som kom til hjernen:

  • Spesifiser begge områdekartene (som nevnt ovenfor). Redd dette vil føre til dupliserte innholdsproblemer.
  • Bare spesifiser HTTPS-nettkartet. Det gir allikevel tilgang til alle unike sider.
  • Finn en magisk (Apache) måte å sende en annen robots.txt via HTTP og HTTPS. Er det til og med mulig? Kan det forårsake problemer?

  • Google bruker nettstedskart som en måte å bestemme hvilke av nettadressene dine som er kanoniske. Så legg versjonen du vil at Google skal sende trafikk til, i nettstedskartet ditt. Se Sitemap Paraox
  • En spesiell grunn til at du ikke eksplisitt angir HTTPS som kanonisk og omdirigering?
  • @DocRoot - Det bringer opp noen spørsmål! Jeg har brukt canonicals i lang tid (på nettsteder som trenger dem), men er det noen gang en grunn til å bruke canonicals og omdirigere?
  • Canonical link tag er et sterkt hint for søkemotoren til hvilken side du vil indeksere i søkeresultatet. Hvis du tror du kan indeksere begge versjonene for samme side, er det ikke sant. Når du gir begge versjonene, vil Google gjennomsøke begge sidene, det betyr sløsing med båndbredde, og Google kan også forsinke å indeksere de andre viktige sidene dine. Google bot kommer til nettstedet ditt med et begrenset gjennomsøkingsbudsjett. Les tredje FAQ.

Et nettstedskart på http://www.example.com/sitemap.php kan bare inneholde nettadresser fra http://www.example.com/.¹ The ordningen og vert må være den samme.

Så hvis du 1) vil gi nettstedskart for begge protokollene, og 2) koble begge områdekartene via Sitemap felt i robots.txt, må du oppgi separate robots.txt-filer for HTTP og HTTPS:

# http://www.example.com/robots.txt Sitemap: http://www.example.com/sitemap.php 
# https://www.example.com/robots.txt Sitemap: https://www.example.com/sitemap.php 

(Det skal være enkelt å oppnå dette med Apache, se for eksempel svarene på Er det en måte å ikke tillate gjennomsøking av bare HTTPS i robots.txt?)

Men det kan være lurt å oppgi et områdekart bare for den kanoniske varianten (f.eks. Bare for HTTPS), fordi det ikke er mye poeng i å la søkemotorer analysere områdekartet for den ikke-kanoniske varianten, ettersom de vanligvis ikke vil indeksere noen av nettadressene. Så hvis HTTPS skulle være kanonisk:

  1. På hver HTTP-side kobler du til HTTPS-versjonen med canonical koblingstype.
  2. Gi bare et områdekart på HTTPS, og oppfør bare HTTPS-nettadressene.
  3. Koble nettstedskartet (ideelt sett bare) fra HTTPS robots.txt.

¹ Unntatt hvis kryssinnsendinger brukes.

  • Utmerket og veldig omfattende.
http://www.example.com/about/ http://www.example.com/about http://example.com/about/ http://example.com/about https://www.example.com/about/ https://www.example.com/about 

Denne typen duplikatinnhold Google håndterer allerede for mange år siden. Så ikke bekymre deg for duplikatinnholdsproblemer.

Det er helt greit å servere HTTP og HTTPS-versjon av nettstedet på samme tid, spesielt når du migrerer nettstedet ditt fra HTTP til HTTPS, gjorde Stackoverflow det også tidligere.

Her indekserer Google bare en versjon av websiden din, det betyr at de ikke kommer til å indeksere begge versjonene http://www.example.com/about.php og https://www.example.com/about.php. Som regel vil de som standard velge HTTPS

Og igjen er det ikke nødvendig å legge til områdekartfilen din i robots.txt. Spesielt når du tenker på Google (Det er ikke ask.com), fordi de gir oss muligheten til å sende inn nettstedskartet vårt til verktøyet for nettredaktører. Så lag to egenskaper i søkekonsollen som http://www.example.com og https://www.example.com og send inn individuelt nettstedskart der.

Jeg vet ikke hvorfor du er så seriøs med nettstedskart, robots.txt og alt. Google kan gjennomsøke og indeksere ethvert nettsted uten nettstedskart, for eksempel har wikipedia ikke noe nettstedskart, men det gjennomsøkes ofte fordi de har god intern koblingsstruktur.

  • Google anbefaler at du sender inn sitemaps, og robots.txt-filen tjener nyttige formål, så jeg vil ikke fjerne dem med mindre det er en tvingende grunn.
  • Google anbefaler aldri det. Det står at vi også kan fange sitemap-filen din fra robots.txt, men hvis du allerede har sendt inn i søkekonsollen, er det helt greit. Hvis områdekartfilen din er offentlig, kan noen skrape nettsteddataene dine. Hvis du først og fremst er bekymret for Google, overtenker du akkurat nå.
  • Flott lenke. En av de klareste tekstene Google publiserte! OK. Jeg sendte inn HTTPS-områdekartet nå, siden det andre allerede var der. Jeg venter en uke eller så for å se hva som skjer.

fungert for deg: Charles Robertson | Ønsker du å kontakte oss?