it-swarm.com.de

Legen Sie den Alias-Pfad mithilfe von .htaccess fest

Ich habe einen Weg wie diesen

http://Host.ip/nl/producten-en-diensten/abonnementen-met-gsm

dadurch wird der richtige Inhalt abgerufen und ich möchte den gleichen Inhalt auch erhalten, wenn ich auf die unten stehende URL zugreife

http://Host.ip/nl/business/producten-en-diensten/abonnementen-met-gsm

Hinweis:

  • Host.ip/nl/ - Statisch
  • producten-en-diensten/abonnementen-met-gsm - Dynamisch, es wird sich ändern
  • Das Schlüsselwort /business wird neben nl angehängt.

Ich habe auf die in diesem Beitrag angegebene Regel verwiesen: Wie kann ich mithilfe einer .htaccess-Datei eine kürzere Alias-URL zu einer längeren URL erstellen?

aber kein erfolg

@Magento URL Rewrite Management wird genau das tun, aber ich versuche dies mit .htaccess zu erreichen.

Ich habe es so versucht, aber es leitet um

RewriteRule (^|.*?/)nl/business/(.*)$ /$1nl/$2 [R=302,L,NC]

Hier ist mein Rewrite-Tag in .htaccess

<IfModule mod_rewrite.c>

############################################
## Enable rewrites

    Options +FollowSymLinks
    RewriteEngine on

## Business Rewrite
    RewriteRule (^|.*?/)nl/business/(.*)$ /$1nl/$2 [NC]

############################################
## You can put here your magento root folder
## path relative to web root

    #RewriteBase /magento/

############################################
## Workaround for HTTP authorization
## in CGI environment

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

############################################
## TRACE and TRACK HTTP methods disabled to prevent XSS attacks

    RewriteCond %{REQUEST_METHOD} ^TRAC[EK]
    RewriteRule .* - [L,R=405]

############################################
## Never rewrite for existing files, directories and links

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l

############################################
## Rewrite everything else to index.php

    RewriteRule .* index.php [L]

</IfModule>
3
prasanna

Entfernen Sie einfach den R=302, aus Ihrer Regel. R bedeutet "umleiten" und 302 bedeutet "temporärer Typ":

RewriteRule (^|.*?/)nl/business/(.*)$ /$1nl/$2 [L,NC]

Für weitere Informationen zu Ihrer Regel:

  • L bedeutet "last" (keine weiteren Umschreiberegeln anwenden)
  • NC bedeutet "kein Fall" (Groß-/Kleinschreibung wird nicht berücksichtigt, daher stimmt /NL/BUSINESS ebenfalls überein - dies ist möglicherweise nicht das, was Sie möchten)
1