2016-06-27 9 views
0

Wir haben diese URL: example.com/automobile/?id=1234 und für seo Zwecke muss es wie examples.com/automobile/passenger/ferrari/?id=1234How to make Htaccess Ignorieren Teil der URL

wir wollen, dass/passagier/ferrari/opcional ist, da diese daten für unsere anfrage und ihre dynamik nicht relevant sind. Wenn also ein Benutzer zu example.com/automobile/?id=1234 oder zu example.com/passenger/what/ever-is-written-here/?id=1234 geht, wird die ursprüngliche URL aufgerufen: example.com/ ? Automobil/id = 1234

Wir sind mit Wordpress arbeiten und haben diese Regeln jetzt:

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteRule . /index.php [L] 
</IfModule> 

es tut mir leid, aber es scheint nicht zu funktionieren. Vielleicht kann ich mit einem Beispiel erklären: prüft dies: [link] ( http://www.casaesol.com/imovel/apartamento/t2-2-quartos/venda/usado/guia-albufeira-faro/?id=2730876)

Wenn Sie die URL Teil/apartamento/T2-2-quartos/Venda/usado/guia-albufeira-faro ändern/Es bringt Sie zur selben URL. http://www.casaesol.com/imovel/?id=2730876

Oder ein anderes Beispiel: https://casa.sapo.pt/Apartamento-T1-Venda-Loures-Loures-Infantado-d4acc412-3146-4f8b-bc8f-820cf556f853.html

Wenn Sie den Teil der URL ändern: Apartment-T1-Venda-Loures-Loures-Infantado zu https://casa.sapo.pt/whateveryouwrite-d4acc412-3146-4f8b-bc8f-820cf556f853.html

Es weist auf die gleiche Stelle

Antwort

1

Umleiten

  • /Passagier/was/ist-schon-geschrieben-hier /? Id = 1 234

zu

  • /Automobil/id = 1234

setzen Sie die folgenden über Ihre anderen Regeln:

RewriteEngine on 
RewriteCond %{THE_REQUEST} /passenger/.+\?id=([0-9]+) [NC] 
RewriteRule^/automobile/?id=%1 [L,R,NE] 
+0

Vielen Dank für Ihre schnelle Antwort, aber die '/passagier/'ist kein Ordner und kann ein anderes Wort enthalten. Wie kann ich dafür sorgen, dass jedes Wort akzeptiert wird? – user4766697

+0

In diesem Fall können Sie die Bedingung folgendermaßen ersetzen: 'RewriteCond% {THE_REQUEST} /(?:(?!automobile).+)\?id=([0-9]+) [NC]' Dies akzeptiert alle Zeichen außer "/ Automobil /" vor der Abfragezeichenfolge – starkeen

+0

Es tut mir leid, aber es scheint nicht zu funktionieren. Vielleicht kann ich mit einem Beispiel erklären: – user4766697