Kurze URLs in ePages 6 6.17.9
Created: 6.0.7; Updated: 6.17.5

Inhaltsverzeichnis

1 Was sind Kurz-URLs / ShortUrl (KU)?

Ab Version 6.0.6 ermöglicht ePages die Verwendung von KU als Alternative zu den bisherigen URLs. Kurz-URLs (KU) sind kurze, kompakte URLs, die auf bestimmte Objekte im Shop (Produkte, Seiten) verweisen.

Die KU wird wie folgt zusammengesetzt: [ShopDomain]/[ShortUrlId]

Der Händler kann die Kurz-URL-ID für alle Seite vergeben, welche auf Objekten der Klasse ContentObject basieren:

Die Kurzform der URL ist ab Aktivierung die primäre URL für die entsprechende Seite im Shop.

Die Verwendung der kurzen URLs ist für alle Shoptypen zulässig, wird also nicht durch Lizenz oder Shoptyp eingeschänkt.

Für bestimmte Seiten können keine KU vergeben werden:

2 Vorteile

In den Ergebnislisten von Suchmaschinen wird die URL des Treffers mit aufgeführt. Diese URL sollte daher kurz und aussagekräftig sein.

2.1 Funktionsweise

Wichtig: Die Verwendung der kurzen URLs ist nur für Shops mit eigener Domain möglich.

  1. Beim Request mit der URL http://www.meinshop.de/MyProduct wird diese an den Webserver übergeben.
  2. Im Webserver findet ein Rewrite statt auf http://www.meinshop.de/epages/.shorturl?URI=MyProduct
  3. Der RequestRouter erkennt anhand der Domain "www.meinshop.de" den Application-Server-Pool und leitet Anfrage dorthin weiter
  4. Ein neues Servlet übernimmt den Request und erkennt anhand der Domain die StoreDB und die ShopID
  5. Das Servlet startet eine Datenbankabfrage mit dem Parameter "MyProduct" für den identifizierten Shop.
  6. Die Antwort liefert StoreAlias, GUID oder ObjectID. Gibt es die aufgerufene ShortUrlId nicht, wird der Fehler 404 "Die angeforderte Seite existiert nicht. .....> Weiter zur Webseite" des Shops wird angezeigt.
  7. Die Daten werden an das Storefront-Servlet übergeben und dort weiterverarbeitet.
Intern werden die ursprünglichen, langen URLs verwendet.

2.2 Vermeidung von "Duplicate content"

Da mehrere URLs (von intern und extern) zur selben Seite führen, würden diese bei Suchmaschinen in Probleme aufgrund "duplicate content" (kopierter Inhalt) laufen. Beispiel-URLs für die gleiche Seite:

  http://www.meinshop.de/epages/DemoShop.sf/de_DE/?ObjectPath=/Shops/DemoShop/Products/lt_0401107001
  http://www.meinshop.de/MyProduct
  http://server/epages/DemoShop.sf/?ObjectPath=/Shops/DemoShop/Products/lt_0401107001&ViewAction=ViewProductViaPortal&Locale=de_DE&et_cid=1&et_lid=1

Um dies zu vermeiden, werden canonical Links verwendet. Im Quelltext wird das neue HTML-Tag <link rel="canonical" href="..."></link> eingefügt. Für alle Seiten, für die eine ShortUrlId in der entsprechenden Sprache angegeben ist, wird im HEAD-Bereich der Eintrag <link rel="http://[Domain]/[ShortUrlId]"></link> hinzugefügt.

Im Ergebnis ziehen Suchmaschinen das Ranking aller URLs der selben Seite auf diesen Link (also den "canonical") zusammen und zeigen ausschließlich diesen im Suchergebnis, dem natürlichen Index.

3 Änderungen und Funktionen

3.1 BBO

Für den Shop muss eine eigene Domain eingetragen werden.

3.2 MBO

3.3 Regeln für die ShortUrlId

Die zulässige Länge der ShortUrlId beträgt 255 Zeichen.

Zulässge Zeichen und Sequenzen:

4 Apache-Konfiguration bei Nichtstandard-Installationen

Sollten die KU nicht funktionieren, ist gegebenenfalls eine manuelle Konfiguration des Systems erforderlich.

4.1 Kurz-URL-Rewrite für bestimmte Hosts weglassen

Die Datei /etc/apache2-epages/envvars definiert in der Umgebungsvariablen APACHE_SHORTURL_EXCEPT Hosts, auf die kein Kurz-URL-Rewrite angewandt werden soll.

Beispiel:

  APACHE_SHORTURL_EXCEPT="localhost 127.0.0.1"

Ein Request von einer der in APACHE_SHORTURL_EXCEPT aufgeführten Hosts (durch Leerzeichen getrennt) führt nicht zu einem Kurz-URL-Rewrite.

Nach einer Änderung von /etc/apache2-epages/envvars muss Apache neu gestartet werden (Reload reicht nicht).

4.2 Kurz-URL-Rewrite für bestimmte URIs weglassen

Die Datei /etc/apache2-epages/extra/httpd_mod_rewrite.conf definiert, für welche URIs keine KU gebildet werden sollen. Es ist nicht nötig, den Standardzeilen zu ändern:

  RewriteCond %{REQUEST_URI} !^/icons_closed/
  RewriteCond %{REQUEST_URI} !^/epages/
  RewriteCond %{REQUEST_URI} !^/Monitor/
  RewriteCond %{REQUEST_URI} !^/WebRoot/
  RewriteCond %{REQUEST_URI} !^/robots.txt
  RewriteCond %{REQUEST_URI} !^/cgi-bin/
  RewriteCond %{REQUEST_URI} !^/favicon.ico
  RewriteCond %{REQUEST_URI} !^/monitor.pl
  RewriteCond %{REQUEST_URI} !^/Maintenance/
  RewriteCond %{REQUEST_URI} !^/WebSecure/
  RewriteCond %{REQUEST_URI} !^/ShopExport/
  RewriteCond %{REQUEST_URI} !^/rs/
  RewriteCond %{REQUEST_URI} !^/api/
  RewriteCond %{REQUEST_URI} !\.php
  RewriteCond %{REQUEST_URI} !\.cgi
  RewriteCond %{REQUEST_URI} !^/webservertest/


Copyright ePages GmbH 2014