Warum registrieren? Nur als registriertes Mitglied vom ABAKUS Forum hast Du vollen Zugriff auf alle Funktionen unserer Website.

mod_rewrite teile der index.php 301 weiterleiten

Mehrere Domains, Domain-Umzug, neue Dateinamen, 301/302
Benutzeravatar
Sololand
PostRank 7
PostRank 7
Beiträge: 544
Registriert: 28.11.2004, 01:03

Beitrag von Sololand » 16.09.2016, 21:27

Moin,

ich suche eine Lösung für folgendes Problem:

/index.php?do=login&email_full=******** soll auf /ordner/ weitergeleitet werden. Die index.php selbst nicht also nur URL die den Teil do=login&email_full=

Meine Lösung klappt nicht :-(

RedirectMatch 301 ^/(.*)do=login&email_full$([^0-9]*)$ /ordner/$1$2


wäre sehr dringend :-(

Danke

[btk]tobi
PostRank 8
PostRank 8
Beiträge: 890
Registriert: 11.10.2004, 06:02
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von [btk]tobi » 16.09.2016, 23:02

Code: Alles auswählen

RewriteRule ^/index.php?do=login&email_full=(.*) /ordner/
Oder willst du die "email_full" noch verwenden?

Gruß Tobi

Benutzeravatar
Sololand
PostRank 7
PostRank 7
Beiträge: 544
Registriert: 28.11.2004, 01:03

Beitrag von Sololand » 17.09.2016, 09:43

Moin,

danke für die Hilfe, das klappt leider nicjt, ich denke das hat was mit den wordpress Befehlen zu tun hat, normal schneidet wordpress das index.php ganz ab

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


die URL: index.php?do=login&email_full=mail@mail.com&pawort=xxx darf in keinem Fall mehr erreichbar sein unter der Hauptseite :-(

[btk]tobi
PostRank 8
PostRank 8
Beiträge: 890
Registriert: 11.10.2004, 06:02
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von [btk]tobi » 17.09.2016, 10:29

Wenn deine Wordpress Installation in einem Unterordner liegt kannst du die htaccess mit den Wordpress Regeln auch da rein schieben dann gelten die Regeln nur für diesen Ordner und nicht für die Hauptseite.

Was heißt index.php?do=login&email_full=mail@mail.com&pawort=xxx darf nicht erreichbar sein? Ich denke du willst es umschreiben, dazu muss die URL aber erreichbar sein.

Gruß Tobi

Melegrian
PostRank 10
PostRank 10
Beiträge: 3170
Registriert: 30.01.2005, 12:36

Beitrag von Melegrian » 17.09.2016, 16:18

Für WordPress bietet sich doch add_rewrite_rule an.

https://www.coder-welten.com/die-wp-rewrite-api/
Scripts und Plugins für Cookie-Hinweise

Benutzeravatar
Sololand
PostRank 7
PostRank 7
Beiträge: 544
Registriert: 28.11.2004, 01:03

Beitrag von Sololand » 18.09.2016, 17:41

Danke nochmal, die URL hat ja Email und Passwort im Titel, das muss da raus ansonsten 404 oder 301 auf eine andere Seite, den die Url gibt es nicht und verweist auf die Startseite anstatt 404 seite. Es ist umgekehrt WordPress läuft hauotordner und das andere Script läuft im unterordner

Melegrian
PostRank 10
PostRank 10
Beiträge: 3170
Registriert: 30.01.2005, 12:36

Beitrag von Melegrian » 18.09.2016, 19:02

Ich verstehe nicht wie die sich jetzt aufrufen lässt, doch wenn die sich jetzt mit

Code: Alles auswählen

ordner/index.php?do=login&email_full=********
aufrufen lassen sollte, dann sollte da halt eine Rewrite in der htaccess ähnlich wie diese aussehen und die Rewrite gehört dann vor der ersten vorhandenen Rule. Die muss aber auch, wie Tobi bereits schrieb, vorhanden sein, sonst kann nichts ausgelöst werden.

Code: Alles auswählen

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %&#123;QUERY_STRING&#125; !^.*nur=einmal$
RewriteRule ^ordner/index\.php$ /ordner/sichtbare.php? &#91;L,R=301&#93;

RewriteCond %&#123;QUERY_STRING&#125; ^do=login&email_full=&#40;.+&#41;$
RewriteRule ^ordner/sichtbare\.php$ /ordner/index.php?do=login&email_full=%1&nur=einmal &#91;QSA,L&#93;

RewriteRule ^index\.php$ - &#91;L&#93;
RewriteCond %&#123;REQUEST_FILENAME&#125; !-f
RewriteCond %&#123;REQUEST_FILENAME&#125; !-d
RewriteRule . /index.php &#91;L&#93;
</IfModule>
Bin mir jetzt nicht wirklich sicher, weil ich meine etwas anders schreibe.

Wenn die sich so aber nicht aufrufen lässt, wer hat das Script in einem Ordner abgelegt? Dann lege es doch einfach außerhalb von WP ab, wenn es doch nicht über die WP-Engine laufen sollte oder binde es richtig ein, als Plugin oder im Theme unter page-templates und bleib innerhalb von WP und benutze add_rewrite_rule.
Scripts und Plugins für Cookie-Hinweise

Benutzeravatar
Sololand
PostRank 7
PostRank 7
Beiträge: 544
Registriert: 28.11.2004, 01:03

Beitrag von Sololand » 19.09.2016, 10:32

Habs jetzt mit php und header loacation gelöst, ging besser, wordpress machte einem das leben mit mod_rewrite etwas schwer.

Lösung:


if($_REQUEST['do'] == 'login'){
header("HTTP/1.1 301 Moved Permanently");
header("Location:https://www.domain.de/");
}


Danke an alle :wave:

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag