Wie entferne ich die SID von der URL?

26

Ich habe Magento 1.9 auf der Domain say abc.com installiert und eine neue Website mit der URL xyz.abc.com von admin erstellt

System -> Manage Stores

Jetzt habe ich eine neue Subdomain xyz.abc.com erstellt und auf die ursprüngliche Magento-Installation verwiesen.

Immer wenn ich xyz.abc.com besuche, funktioniert es einwandfrei. Die auf dieser Seite generierten Links haben jedoch eine Abfragezeichenfolgenparameter-SID wie abc.com?SID=sdfskjdf45ssdf/somepage.

Jetzt möchte ich abc.com?SID=sdfskjdf45ssdf/somepage durch xyz.abc.com/somepage ersetzen.

piyush_systematix
quelle

Antworten:

8

Sie müssen die Basis-URL und die Basis-Link-URL für Ihren Subdomain-Speicher konfigurieren.
Gehen Sie zu system-> configuration-> web-> unsecure (und sichern Sie bei Bedarf) und geben Sie http://xyz.abc.comdie Basis-URL und die Basis-Link-URL ein.
Sie erhalten dies, weil Sie beim Ausführen des Unterdomänenspeichers tatsächlich den Hauptdomänenspeicher ausführen und jeder Link auf der Seite Sie zum Hauptdomänenspeicher zurückführt.

Marius
quelle
In der Subdomain habe ich nur das http://xyz.abc.comFormat, aber es wird immer noch ?__SID=Uan die URL meiner Hauptdomain angehängt.
Mr_Green
system-> configuration-> web-> session
validation settings-
51

Gehen Sie zu Admin> System> Konfiguration> Web> Einstellungen für die Sitzungsüberprüfung .

Dann deaktiviere config Use SID on Frontend = No

Peter Chmeryk
quelle
6

Viele Leute fragen sich, warum manchmal der SID-Teil in ihren Magento-URLs erscheint. Dies ist der Fall, wenn Ihre URL in der Regel am Ende eine zusätzliche SID-Abfrage enthält. Schauen Sie sich das Bild an. Die Neugier ist, dass es nicht immer erscheint. Was ist das häufigste Szenario? Sie haben nicht mit derselben Domain-Variante auf die Site zugegriffen, die Sie als "Basis-URL" in "System> Konfiguration> Webschnittstelle" eingegeben haben.

Wenn Sie sich entscheiden, die Website zu starten, müssen Sie entscheiden, ob Sie http://www.domain.com/ URL oder http://domain.com/ vermarkten möchten . Dies ist eine wichtige Entscheidung und Sie sollten Ihre Meinung nicht oft ändern. Suchmaschinen behandeln diese beiden URLs normalerweise als unterschiedliche Websites, und daher kann das Page Rank-Potenzial zwischen diesen beiden URLs aufgeteilt werden. Überlegen Sie sich also, ob Sie www verwenden oder nicht, und halten Sie an dieser Entscheidung fest.

Wenn Sie sich entschieden haben, gehen Sie zu Ihrem System> Konfiguration> Webinterface und geben Sie das gewünschte Formular in das Feld "Basis-URL" ein. Wenn Sie auf die Site zugreifen, werden Sie feststellen, dass keine "SID" vorhanden sind, wenn die URL mit dem Wert aus dem Feld "Basis-URL" übereinstimmt. Sie werden angezeigt, wenn dies nicht der Fall ist.

Nun möchten wir die Möglichkeit, dass die Site nach dem Zugriff auf die richtige URL umleitet. Jemand kann einen falschen Link zu einem Forum oder Blog setzen. Wir möchten nicht, dass diese Links zu einer falschen URL führen, und wir möchten nicht, dass SIDs diesen Besuchern angezeigt werden. Das Wichtigste: Wir möchten nicht, dass Suchmaschinen die URLs mit SIDs indizieren.

Die Lösung ist einfach. Gehen Sie zu Ihrer .htaccess-Datei und suchen Sie die Zeile mit der Aufschrift

RewriteEngine on Wenn Sie einen WWW-Teil haben möchten:

RewriteEngine on RewriteCond %{HTTP_HOST} !^www\.yourdomain\.com$ [NC] RewriteRule ^(.*)$ http://www.yourdomain.com/$1 [R=301,L] Wenn Sie keinen WWW-Teil haben möchten:

RewriteEngine on RewriteCond %{HTTP_HOST} !^yourdomain\.com$ [NC] RewriteRule ^(.*)$ http://yourdomain.com/$1 [R=301,L]

Quelle von Incho.

Keyul Shah
quelle
6
    $params = array(
        '_nosid' => true
    );

    $url = Mage::getUrl('*/*/*', $params);
Alex
quelle