php.de

Zurück   php.de > Webentwicklung > Server, Hosting und Workstations

Server, Hosting und Workstations Server-Konfigurationsdateien (.htaccess/httpd.conf) und Arbeiten auf Serverebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 03.10.2009, 13:04  
Mak
Neuer Benutzer
 
Registriert seit: 10.08.2009
Beiträge: 7
PHP-Kenntnisse:
Fortgeschritten
Mak befindet sich auf einem aufstrebenden Ast
Standard mod_rewrite: Weiterleitung

Ich möchte mit mod_rewrite eine Weiterleitung für externe Links schreiben, irgendwie funktioniert das aber nicht. Ich möchte, dass alle Links auf die Datei goto.php?url=URL auf die übergebene URL weitergeleitet werden.

Dafür habe ich jetzt folgenden Code:
RewriteRule ^/goto/(.*)$ goto.php?url=$1

Der Code funktioniert aber nicht.
http://domain.de/goto/http://beispiel.de/ sollte eigentlich in domain.de/goto.php?url=http://beispiel.de/ umgewandelt werden, stattdessen kommt domain.de/goto.php?url= raus. Wo ist mein Denkfehler?
Mak ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 03.10.2009, 13:47  
Benutzer
 
Registriert seit: 01.10.2009
Beiträge: 54
PHP-Kenntnisse:
Fortgeschritten
Nickstar ist zur Zeit noch ein unbeschriebenes Blatt
Nickstar eine Nachricht über ICQ schicken
Standard

Hallo

versuche es mal so: RewriteRule ^goto/([^/]+)$ goto.php?url=$1

Dabei sollte der Link der übergeben wird aber nicht mit http:// beginnen da alle Slashes nach goto/ "verboten" sind. Du solltest also das http:// raus filtern z.B. mit preg_replace('http://', '', $url)... dann sollte es eig. funktionieren!

Gruss Nickstar
Nickstar ist offline   Mit Zitat antworten
Alt 03.10.2009, 14:22  
Mak
Neuer Benutzer
 
Registriert seit: 10.08.2009
Beiträge: 7
PHP-Kenntnisse:
Fortgeschritten
Mak befindet sich auf einem aufstrebenden Ast
Standard

Hm, ne, das funktioniert auch nicht. Aber das würde mir auch nicht helfen, die URL auf die weitergeleitet wird könnte ja auch test.de/ordner/datei.html heißen, da wären dann ja auch Slashes drin. (Wobei ich das im Notfall umgehen könnte, wenn es anders nicht gehen sollte).

Ich habe mal ein paar Sachen durchprobiert. Sobald man irgendwo ein Slash einfügt, funktioniert das nicht mehr.

Diese hier funktionieren alle:
Code:
RewriteRule ^goto:(.*)$ goto.php?url=$1 
RewriteRule ^goto_(.*)$ goto.php?url=$1 
RewriteRule ^goto(.*)$ goto.php?url=$1
Nur sobald ich
Code:
RewriteRule ^goto/(.*)$ goto.php?url=$1
versuche, funktioniert es nicht mehr
Muss man Slashes irgendwie escapen oder so?
Mak ist offline   Mit Zitat antworten
Alt 03.10.2009, 14:34  
Benutzer
 
Registriert seit: 01.10.2009
Beiträge: 54
PHP-Kenntnisse:
Fortgeschritten
Nickstar ist zur Zeit noch ein unbeschriebenes Blatt
Nickstar eine Nachricht über ICQ schicken
Standard

Eine URL zu escapen bringt nichts!

Man könnte es vielliecht noch so machen das du eine Datenbank-Tabelle anlegst wo ein eindeutiger 6-10 stelliger Hash mit der URL eingetragen ist!

Dann müsstest du nur noch in deiner goto.php den Hash der über die URL mitkommt in der Datenbank abfragen und dann auf die dem Hash zugewiesene URL weiterleiten!

dann sollte es recht einfach sein!

RewriteRule ^goto/([1-9a-f]+)$ goto.php?hash=$1

Den Hash kannste mittels md5() und UniqueId machen.

Wenn du hilfe brauchst sag bescheid!

Gruss Nickstar
Nickstar ist offline   Mit Zitat antworten
Alt 03.10.2009, 14:57  
Mak
Neuer Benutzer
 
Registriert seit: 10.08.2009
Beiträge: 7
PHP-Kenntnisse:
Fortgeschritten
Mak befindet sich auf einem aufstrebenden Ast
Standard

Danke für den Vorschlag, das würde ich hinkriegen. Finde ich aber etwas umständlich. Gibt es nicht irgendwie eine Möglichkeit, das htaccess so zum Laufen zu bringen? Kann doch eigentlich nicht so schwierig sein.
Mak ist offline   Mit Zitat antworten
Alt 03.10.2009, 15:00  
Benutzer
 
Registriert seit: 01.10.2009
Beiträge: 54
PHP-Kenntnisse:
Fortgeschritten
Nickstar ist zur Zeit noch ein unbeschriebenes Blatt
Nickstar eine Nachricht über ICQ schicken
Standard

Hm... mir fällt da gerade auch nichts besseres ein! Aber für mich wäre das ne komfortable Lösung!
Nickstar ist offline   Mit Zitat antworten
Alt 30.08.2010, 20:08  
Neuer Benutzer
 
Registriert seit: 30.08.2010
Beiträge: 1
PHP-Kenntnisse:
Anfänger
Eiswagen befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Mak Beitrag anzeigen
Muss man Slashes irgendwie escapen oder so?
Du kannst es mal versuchen, ob es klappt:

Code:
RewriteRule ^goto\/(.*)$ goto.php?url=$1
Eiswagen ist offline   Mit Zitat antworten
Alt 30.08.2010, 20:49  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.255
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Code:
RewriteRule ^goto/(.*)$ /goto.php?url=$1
?
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Weiterleitung nach Login Laujun PHP Tipps 2009 18 14.06.2009 21:20
301 Weiterleitung und Indizierung durch Google Alexxx Server, Hosting und Workstations 3 06.06.2009 12:01
[Erledigt] Automatische weiterleitung nach if Kay654 PHP Tipps 2009 4 20.05.2009 20:54
header("Location: ... weiterleitung funktioniert nicht mqs PHP Tipps 2009 20 18.03.2009 17:10
Zeitbasierende Weiterleitung GSJLink PHP Tipps 2007 5 29.12.2005 10:33
automatische weiterleitung mit variablen übergabe MrCavity PHP Tipps 2007 2 26.11.2005 19:39
Weiterleitung funtkioniert nicht PHP Tipps 2005-2 12 05.07.2005 09:47
Weiterleitung PHP Tipps 2005 26 06.05.2005 18:11
weiterleitung die xte ff-webdesigner.de PHP Tipps 2005 2 24.04.2005 12:30
Hilfe die Weiterleitung geht nicht PHP Tipps 2005 6 30.01.2005 13:56
[Erledigt] [ Weiterleitung erkennen ] PHP Tipps 2005 6 20.01.2005 15:28
Weiterleitung nach bestimmter Zeit PHP Tipps 2004-2 7 24.11.2004 17:50
[Erledigt] Weiterleitung HTML, Usability und Barrierefreiheit 8 20.10.2004 17:00
Weiterleitung mit header PHP Tipps 2004 10 26.09.2004 23:13
Weiterleitung... PHP Tipps 2004 7 08.08.2004 16:02

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mod_rewrite weiterleitung, mod_rewrite weiterleiten, mod rewrite weiterleitung, modrewrite weiterleitung, http://www.php.de/server-hosting-und-workstations/59587-mod_rewrite-weiterleitung.html, weiterleitung mod_rewrite, mod_rewrite automatische weiterleitung, mod_rewrite extern, mod_rewrite hash, rewrite weiterleitung mit variablen, php url rewrite hash, externe weiterleitung php funktioniert nicht, mod rewrite automatische weiterleitung, weiterleiten mod_rewrite, rewrite an extern, rewriterule weiterleitung, externe weiterleitung mit mod_rewrite, goto.php weiterleitung beispiel, mod rewrite hash, mod_rewrite für externe links

Alle Zeitangaben in WEZ +1. Es ist jetzt 20:31 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum