For nylig har jeg aktiveret alle mine servere til at betjene alt via HTTP og HTTPS. Brugere kan få adgang til ethvert websted via http://www.example.com eller https://www.example.com. Alle sider er identiske mellem versionerne, 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 nævner ikke protokollen med en undtagelse. Med andre ord, hvis siden er indlæst med HTTP, vil den linke til andre sider, billeder, CSS, Javascript over HTTP og det samme med HTTPS for at undgå advarsler om blandet indhold.

Nu om denne undtagelse. Det findes i robots.txt:

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

Denne URL skal tilsyneladende være absolut.

Nu er det problem, jeg ser, om det når Google læser https://www.example.com/robots.txt, det får et HTTP-sitemap! Dokumentationen på robots.org siger, at man kan angive flere sitemaps, men hvis jeg ikke er sikker på, at det er en god idé at placere både HTTP- og HTTPS-sitemap, da de hver vil indeholde en liste med identiske sider (en med HTTP og en med HTTPS) .

Hvordan skal Sitemap i robots.txt håndteres for websteder, der accepterer HTTP og HTTPS?

Nogle ideer, der kom til at tænke på:

  • Angiv begge sitemaps (som nævnt ovenfor). Bange for, at dette ville medføre duplikatindholdsproblemer.
  • Angiv kun HTTPS Sitemap. Det giver alligevel adgang til alle unikke sider.
  • Find en magisk (Apache) måde at sende en anden robots.txt via HTTP og HTTPS. Er det endda muligt? Kan det forårsage problemer?

  • Google bruger sitemaps som en måde at bestemme, hvilke af dine webadresser der er kanoniske. Så sæt den version, du vil have Google til at sende trafik til, i dit sitemap. Se Sitemap Paraox
  • Enhver særlig grund til, at du ikke udtrykkeligt indstiller HTTPS som kanonisk og omdirigerer?
  • @DocRoot - Det bringer et par spørgsmål op! Jeg har brugt canonicals i lang tid (på websteder, der har brug for dem), men er der nogensinde en grund til at bruge canonicals og omdirigere?
  • Canonical link tag er et stærkt tip til søgemaskine til hvilken side du vil indeksere i søgeresultatet. Hvis du tror, ​​du kan indeksere begge versioner til samme side, er det ikke sandt. Når du leverer begge versioner, gennemgår Google begge sider, det betyder spild af båndbredde, og Google kan også forsinke at indeksere dine andre vigtige sider. Google bot kommer til dit websted med et begrænset gennemgangsbudget. Læs 3. FAQ.

Et sitemap på http://www.example.com/sitemap.php kan kun indeholde webadresser fra http://www.example.com/.¹ Den ordning og vært skal være den samme.

Så hvis du 1) ønsker at give sitemaps til begge protokoller, og 2) link begge sitemaps via Sitemap felt i robots.txt, skal du angive separate robots.txt-filer til 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 let at opnå dette med Apache, se f.eks. Svarene på Er der en måde at ikke tillade gennemgang af kun HTTPS i robots.txt?)

Men du vil muligvis kun give et sitemap til den kanoniske variant (f.eks. Kun til HTTPS), fordi det ikke er meget nyttigt at lade søgemaskiner analysere sitemap til den ikke-kanoniske variant, da de typisk ikke vil indeksere nogen af ​​dens webadresser. Så hvis HTTPS skulle være kanonisk:

  1. På hver HTTP-side skal du linke til dens HTTPS-version med canonical link type.
  2. Angiv kun et sitemap på HTTPS, og kun en liste over HTTPS-webadresserne.
  3. Link sitemap (ideelt set kun) fra HTTPS robots.txt.

Undtagen hvis der anvendes krydssendinger.

  • Fremragende og meget 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 slags duplikatindhold, som Google allerede håndterer for mange år siden. Så først skal du ikke bekymre dig om duplikatindholdsproblem.

Det er helt fint at betjene HTTP- og HTTPS-versionen af ​​webstedet på samme tid, især når du migrerer dit websted fra HTTP til HTTPS, gjorde Stackoverflow det også tidligere.

Her indekserer Google kun en version af din webside, det betyder, at de ikke vil indeksere begge versioner http://www.example.com/about.php og https://www.example.com/about.php. For det meste vælger de som standard HTTPS

Og igen er der ikke behov for at tilføje din sitemap-fil til robots.txt. Specielt når du tænker på Google (Det er ikke ask.com), fordi de giver os mulighed for at indsende vores sitemap i webmasterværktøjet. Så lav to egenskaber i søgekonsollen som http://www.example.com og https://www.example.com og indsend individuelt sitemap der.

Jeg ved ikke, hvorfor du er så seriøs omkring sitemap, robots.txt og alle ting. Google kan gennemgå og indeksere ethvert websted uden sitemap, for eksempel har wikipedia ikke noget sitemap, men det crawles ofte, fordi de har god intern linkstruktur.

  • Google anbefaler, at du indsender sitemaps, og robots.txt-filen tjener nyttige formål, så jeg vil ikke fjerne dem, medmindre der er en tvingende grund.
  • Google anbefaler aldrig det. Det siger, at vi også kan fange din sitemapfil fra robots.txt, men hvis du allerede har sendt til søgekonsollen, er det helt fint. Hvis din sitemapfil er offentlig, kan nogen skrabe dine webstedsdata. Hvis din største bekymring er Google, overtænker du lige nu.
  • Fantastisk link. En af de klareste tekster, som Google har offentliggjort! OKAY. Jeg indsendte HTTPS-sitemap nu, da det andet allerede var der. Jeg venter en uges tid på at se, hvad der sker.

arbejdet for dig: Charles Robertson | Ønsker du at kontakte os?