2017-07-14 5 views
1

Ich habe ein einfaches Problem. Ich muss seltsame URL in der Joomla-Installation meines Klienten umleiten.Redirect 301 für? Index.php

Ich habe einen Link wie example.com/?index.php, die ich an example.com/ in .htaccess umleiten muss.

habe ich versucht, die folgenden, aber es funktioniert nicht

Redirect 301 /?index.php/
+0

Sind Sie sicher, dass dort ein Fragezeichen steht? In deiner URL? Die Syntax sieht mir komisch aus. Query String sollte nach dem 'index.php' folgen, nicht davor – Bwrites

+0

Ja, google indizierte es und ich weiß nicht Quelle dieses Fragezeichens das ist, warum ich es umleiten muss, – CommanderSpock

Antwort

0
example.com/?index.php 

In dieser URL index.php befindet sich im Abfragezeichenfolgeteil der URL. Sie können keine mod_alias Redirect verwenden, um dies zu erfassen, müssen Sie mod_rewrite verwenden.

In der Nähe der Spitze Ihrer .htaccess-Datei (nach dem vorhandenen RewriteEngine Richtlinie) versuchen Sie Folgendes:

RewriteCond %{QUERY_STRING} ^index\.php$ 
RewriteRule ^$ /? [R,L] 

Die ? am Ende des Substitution entfernt effektiv die Abfragezeichenfolge aus der Anfrage.

Dies ist auch eine temporäre (302) Umleitung, ändern Sie die R zu R=301 nur, wenn Sie sicher sind, es funktioniert OK.

+0

ja! es funktioniert jetzt, danke, Redirect macht es funktioniert. – CommanderSpock

0

Versuchen Sie es mit einer absoluten URL als Ziel zu tun:

Redirect 301 /?index.php http://www.yourdomain.com/ 
+0

funktioniert nicht, ich versuchte mit Domänen und ohne, weiß nicht was zu tun:/ – CommanderSpock

+0

meybe etwas mit RuleCond? Aber in Joomla weiß ich nicht, wie ich es aufbauen soll. – CommanderSpock

+0

Sie könnten die komplette .htaccess-Datei posten, damit wir uns Ihre Regeln/Bedingungen ansehen können. – trpx