Neu Googlebot kann Sitemap nicht abrufen, wohl aber den Sitemapindex

Jan Wurl

Aktives Mitglied
23. Dezember 2013
31
0
Es handelt sich um einen bei JTL gehosteten Shop, https://itsb2b.de/.

Bei den google Webmastertools habe ich wie immer die Sitemap hinzugefügt, https://itsb2b.de/sitemap_index.xml, die wird auch normal gelesen und analysiert.
Beim Versuch die eigentlichen Sitemaps (https://itsb2b.de/export/sitemap_0.xml.gz, etc.) zu lesen meldet google immer "Sitemap konnte nicht gelesen werden ". Mit dem Browser können die Dateien ganz normal gelesen werden, auch mit User-Agent "googlebot".
Beim googlebot wird der Fehler 304 "not modified" zurückgegeben, ohne Datei, beim Browser ganz normal 200 mit Datei.

Hat irgendwer eine Idee?

meine htaccess:

<IfModule mod_setenvif.c>
<IfModule mod_headers.c>
<FilesMatch "\.(bmp|cur|gif|ico|jpe?g|png|svgz?|webp)$">
SetEnvIf Origin ":" IS_CORS
Header set Access-Control-Allow-Origin "*" env=IS_CORS
</FilesMatch>

SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding
RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding
</IfModule>
</IfModule>

<IfModule mod_filter.c>
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE \
"application/atom+xml" \
"application/javascript" \
"application/json" \
"application/ld+json" \
"application/manifest+json" \
"application/rdf+xml" \
"application/rss+xml" \
"application/schema+json" \
"application/vnd.geo+json" \
"application/vnd.ms-fontobject" \
"application/x-font-ttf" \
"application/x-javascript" \
"application/x-web-app-manifest+json" \
"application/xhtml+xml" \
"application/xml" \
"font/eot" \
"font/opentype" \
"image/bmp" \
"image/svg+xml" \
"image/vnd.microsoft.icon" \
"image/x-icon" \
"text/ cache-manifest" \
"text/css" \
"text/html" \
"text/javascript" \
"text/plain" \
"text/vcard" \
"text/vnd.rim.location.xloc" \
"text/vtt" \
"text/x-component" \
"text/x-cross-domain-policy" \
"text/xml"
</IfModule>
<IfModule mod_mime.c>
AddEncoding gzip svgz
</IfModule>
</IfModule>

<IfModule !mod_filter.c>
<IfModule mod_deflate.c>
<FilesMatch "\\.(js|css|html|htm|xml)$">
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>
</IfModule>

<IfModule mod_expires.c>
ExpiresActive on
ExpiresDefault "access plus 1 months"
</IfModule>

<IfModule mod_headers.c>
Header unset ETag

Header set X-UA-Compatible "IE=edge"
Header set X-Content-Type-Options "nosniff"
Header unset X-Powered-By

<FilesMatch "\.(eot|otf|tt[cf]|woff2?)$">
Header set Access-Control-Allow-Origin "*"
</FilesMatch>

<FilesMatch "\.(appcache|atom|bbaw|bmp|crx|css|cur|eot|f4[abpv]|flv|geojson|gif|htc|ico|jpe?g|js|json(ld)?|m4[av]|manifest|map|mp4|oex|og[agv]|opus|otf|pdf|png|rdf|rss|safariextz|svgz?|swf|topojson|tt[cf]|txt|vcard|vcf|vtt|webapp|web[mp]|webmanifest|woff2?|xloc|xml|xpi)$">
Header unset X-UA-Compatible
</FilesMatch>
</IfModule>

<IfModule mod_rewrite.c>
RewriteEngine on

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

#REWRITE ANPASSUNG 1 (REWRITEBASE)
#Wenn Ihr Shop in einem Unterverzeichnis (also z.B. meinedomain.de/meinverzeichnis) installiert ist, so kommentieren Sie die kommende Zeile aus und passen Sie den Verzeichnisnamen an
#RewriteBase /

#REWRITE ANPASSUNG 2 (auf www.meinedomain.de umleiten)
#Ihr Shop sollte nicht unter www.meinedomain.de und nur meinedomain.de erreichbar sein, siehe: http://guide.jtl-software.de/index....tion#4._Einrichtung_einer_Domainweiterleitung
#RewriteCond %{HTTP_HOST} ^meinedomain.de
#RewriteRule ^(.*)$ http://www.meinedomain.de/$1 [r=301,L]

#REWRITE ANPASSUNG 3 (Entfernt abschließenden Slash per 301-Redirect)
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{REQUEST_URI} ^(.*)/$
#RewriteRule ^. %1 [L,R=301]

#Rewrite der JTL-Shop-URLs
#Aendern Sie an diesen Zeilen nichts!
RewriteRule ^templates_c/filecache/.*$ - [R=403,NC,L]
RewriteRule ^((urllist|sitemap_).*\.(xml|txt)(\.gz)?)$ includes/sitemap.php?datei=$1 [L]
RewriteRule ^export/((sitemap_).*\.(xml|txt)(\.gz)?)$ $1 [L]
RewriteRule ^asset/(.*)$ includes/libs/minify/?g=$1 [L]
RewriteRule ^robots.txt$ robots.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^. index.php [L]
</IfModule>

FileETag None
#Server Signatur deaktivieren
#ServerSignature Off
 

Patrick Gugelsberger

Moderator
Mitarbeiter
1. Februar 2019
454
78
Hallo Jan,

ich schreibe hier nochmal das selbe wie im Ticket rein falls noch wer das Problem hat:

der Client (Browser oder in dem Fall Googlebot) muss einen speziellen header übermitteln
welcher auch einen timestamp enthält.

HTTP304 heißt ja im Endeffekt nur das die Datei nicht modifiziert wurde und entsprechend
auch nicht mehr durch Google abgeholt werden muss.

Wenn das modified date seit dem letzten Download Zeitpunkt nicht anders ist, dann will und
braucht Google die Datei auch nicht neu abholen/verarbeiten.

Google sendet diesen timestamp im Header mit, der Browser tut dies nicht weswegen der
Browser auch einen normalen HTTP 200 ausgibt.