„Unable to find a matching sales channel for the request: https://www.meineDomain.de/index.php. Please make sure the domain mapping is correct.“
Ich habe herausgefunden, dass das Problem am angehängten „/index.php“ liegt. Der Fehler kommt also, wenn jemand (wahrscheinlich ein Bot) die Domain mit angehängtem „/index.php“ aufruft. Bei normalem Aufruf der Domain https://www.meineDomain.de (so wie sie auch im Sales Channel eingetragen ist) passt alles.
Ah ok, ich habe hier mehrere Shops mit dieser Version. Also an Shopware liegt es nicht. Normalerweise folgt beim Aufruf der „index.php“ per 301 eine Weiterleitung. Am Server etwas verstellt? PHP 8.2? .htaccess ist auch korrekt vorhanden?
Redirect visitors from HTTP to HTTPS via a SEO friendly 301 redirect
ist aktiviert.
PHP Version ist 8.2
htaccess sieht wie folgt aus:
# BEGIN Shopware
# The directives (lines) between "# BEGIN Shopware" and "# END Shopware" are dynamically generated. Any changes to the directives between these markers will be overwritten.
DirectoryIndex index.php
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$
RewriteRule ^(.*) - [E=BASE:%1]
# Sets the HTTP_AUTHORIZATION header removed by Apache
RewriteCond %{HTTP:Authorization} .
RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^index\.php(?:/(.*)|$) %{ENV:BASE}/$1 [R=301,L]
# If the requested filename exists, simply serve it.
# We only want to let Apache serve files and not directories.
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
# Rewrite all other queries to the front controller.
RewriteRule ^ %{ENV:BASE}/index.php [L]
</IfModule>
<IfModule !mod_rewrite.c>
<IfModule mod_alias.c>
RedirectMatch 302 ^/$ /index.php/
</IfModule>
</IfModule>
<IfModule mod_headers.c>
<FilesMatch "\.(?i:svg)$">
Header set Content-Security-Policy "script-src 'none'"
</FilesMatch>
</IfModule>
# END Shopware
Keiner mehr eine Idee? Woher kommt dieser Fehler? Und warum zerstört es das Template, wenn der Fehler auftritt?
Wäre wirklich super, wenn mir jemand helfen könnte.