zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden mod_rewrite Weiterleitung bzgl. ...

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 04.03.2012, 16:38
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.06.2009
Beiträge: 9
andrew28 befindet sich auf einem aufstrebenden Ast
Standard mod_rewrite Weiterleitung bzgl. ...

Hi,

also ich verzweifle schon etwas .

Im Prinzip möchte ich einfach nur mit Hilfe von mod_rewrite eine Weiterleitung einrichten ohne das sich oben die URL ändert.

Folgendes passiert :

Der User gibt folgendes url ein http://domain.de/ordnername

"ordnername" existiert aber auf dem Webserver nicht, quasi ein virtueller Ordner.

Ich möchte nun, dass der User wenn er diese URL eingibt auf einen anderen real existierenden Unterordner geleitet wird. Allerdings soll sich dabei die URL oben im Browsereingabefenster nicht verändern.

Wie kann ich das machen ?

Ich danke euch für eure Hilfe.
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 04.03.2012, 16:51
body.ie {display: grotte}
XHTMLforum-Mitglied
 
Registriert seit: 09.01.2011
Beiträge: 841
take_a_7 sorgt für eine eindrucksvolle Atmosphäretake_a_7 sorgt für eine eindrucksvolle Atmosphäre
Standard

Moin,

du suchst keine Weiterleitung, sondern eine interne Umschreibung. Die simpelste Variante wäre:
Code:
RewriteEngine On
RewriteRule ^/?foo/(.*)$ /bar/$1 [L]
Damit würde z.B. http://example.com/foo/baz.html intern auf http://example.com/bar/baz.html umgeschrieben werden. Einfach mal googlen, dann kriegst du noch mehr Beispiele

gruß,
take
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 04.03.2012, 16:57
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.06.2009
Beiträge: 9
andrew28 befindet sich auf einem aufstrebenden Ast
Standard

Okay,

jetzt geht es doch, hatte wo anders noch etwas zu stehen, was rauß musste.

Das hier : RewriteRule .* index.php [L]

Okay, allerdings schreibt er oben nun die URL um und das soll ja eig. nicht passieren

Wie kann ich das unterbinden ?

Geändert von andrew28 (04.03.2012 um 17:08 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 04.03.2012, 17:28
Benutzerbild von Praktikant
Semantikbremse.
XHTMLforum-Kenner
 
Registriert seit: 22.04.2008
Beiträge: 4.985
Praktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz sein
Standard

Das was du dort zeigst ist nicht sonderlich zielführend. Es wird einfach bei allen Anfragen die Datei index.php angezeigt ohne dabei die URI zu beachten.

Du solltest den Code von take_a_7 nehmen, der funktioniert so. Eine Weiterleitung dürfte bei dem von dir gezeigten Code nicht stattfinden. Da du die RewriteEngine nicht eingeschaltet hast dürfte eigentlich gar nichts passieren.
__________________
Rettet die Erde.... sie ist der einzige Planet mit Schokolade!
Mit Zitat antworten
  #5 (permalink)  
Alt 04.03.2012, 17:35
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.06.2009
Beiträge: 9
andrew28 befindet sich auf einem aufstrebenden Ast
Standard

Also ich habe folgendes zu stehen :

Code:
RewriteEngine on

RewriteRule ^/?ordner$ /ordner/$1 [L]

RewriteCond %{REQUEST_URI}  ^/?$1

RewriteRule ^(.*)$ /neuer_unterordner/$1 [L]
Das klappt aber irgendwie nicht. Ich muss halt am Anfang abfangen das der User http://domain.de/ordner eingibt. Eigentlich müsste er http://domain.de/ordner/

Denn dann klappt es und die Domain bleibt oben stehen.

Sobald der aber http://domain.de/ordner eingibt wird eine Direkte Weiterleitung gemacht und die URL ändert sich oben.

Ach ist das alles ein Mist
Mit Zitat antworten
  #6 (permalink)  
Alt 04.03.2012, 17:53
body.ie {display: grotte}
XHTMLforum-Mitglied
 
Registriert seit: 09.01.2011
Beiträge: 841
take_a_7 sorgt für eine eindrucksvolle Atmosphäretake_a_7 sorgt für eine eindrucksvolle Atmosphäre
Standard

Moin,

das von dir beschriebene Verhalten ist, soweit ich das nachvollziehen kann, nicht das Rewrite-Modul schuld. Nehmen wir an du hast einen Ordner /foo/ im Document-Root. Gibt der User jetzt http://example.com/foo ein, wird er auf http://example.com/foo/ umgeleitet. Das willst du verhindern, richtig? Dafür siehe die Apache-Dokumentation.

gruß,
take

Geändert von take_a_7 (04.03.2012 um 17:53 Uhr) Grund: Tippfehler
Mit Zitat antworten
  #7 (permalink)  
Alt 04.03.2012, 18:12
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.06.2009
Beiträge: 9
andrew28 befindet sich auf einem aufstrebenden Ast
Standard

Hey ,

im Prinzip genau anders herum.

Ich möchte vor dem Rewrite dafür sorgen dass, ob der Kunde nun http://domain.de/foo oder http://domain.de/foo/ eingibt immer der Slash nach dem foo angezeigt wird, also da ist sozusagen. Dieser darf nicht fehlen.
Mit Zitat antworten
  #8 (permalink)  
Alt 04.03.2012, 18:34
body.ie {display: grotte}
XHTMLforum-Mitglied
 
Registriert seit: 09.01.2011
Beiträge: 841
take_a_7 sorgt für eine eindrucksvolle Atmosphäretake_a_7 sorgt für eine eindrucksvolle Atmosphäre
Standard

Moin,

also doch einen Redirect? Du widersprichst dir...

gruß,
take
Mit Zitat antworten
  #9 (permalink)  
Alt 04.03.2012, 18:40
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.06.2009
Beiträge: 9
andrew28 befindet sich auf einem aufstrebenden Ast
Standard

Es soll schon ein Redirect sein, aber die URL oben soll sich nicht verändern.

Ich habe es jetzt zumindest soweit hinbekommen, dass es fast funktioniert.

Das einzige was noch nicht klappt ist, wenn ich eben den Slash nicht mit angebe die Seite in dem anderen Ordner nicht richtig geladen wird da z.B. das Stylesheet nicht gefunden wird.

Wenn ich foo/ den Slash mitübergebe klappt alles wunderbar.

Code:
RewriteEngine on
RewriteRule  ^foo$       foo/        [L]
RewriteRule  ^foo/(.*)$  blub/foo/$1
Das klappt wunderbar wenn ich die URL http://domain.de/foo/ aufrufe.
Es klappt auch mit http://domain.de/foo allerdings sind die Pfadangaben auf der Seite nicht korrekt und das Stylesheet wird nicht korrekt geladen.

Deshalb eben, meine Anmerkungen dass der Slash wichtig ist nach dem foo .

Ich hoffe ich habe mich jetzt nicht wieder wiedersprochen
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 04.03.2012, 18:43
body.ie {display: grotte}
XHTMLforum-Mitglied
 
Registriert seit: 09.01.2011
Beiträge: 841
take_a_7 sorgt für eine eindrucksvolle Atmosphäretake_a_7 sorgt für eine eindrucksvolle Atmosphäre
Standard

Moin,

Zitat:
Zitat von andrew28 Beitrag anzeigen
Es soll schon ein Redirect sein, aber die URL oben soll sich nicht verändern.
Zitat:
Zitat von andrew28 Beitrag anzeigen
Ich hoffe ich habe mich jetzt nicht wieder wiedersprochen
Doch. Ein Redirect bedeutet, dass sich die URL ändert!

Ich surfe z.B. http://example.com an, und werde dann zu http://www.example.com umgeleitet. Dann ändert sich auch die URL in meiner Adressleiste.

gruß,
take
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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 aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
jquery // css ändern vor header weiterleitung bzw. nach erzeugtem pdf monran Javascript & Ajax 2 02.03.2011 21:25
301 Weiterleitung .htaccess BoFiaZ Serveradministration und serverseitige Scripte 4 20.09.2010 18:22
Weiterleitung mit .htaccess ms_fvfv Serveradministration und serverseitige Scripte 1 02.08.2010 22:28
Fehlermeldung: "No input file specified" nach php weiterleitung nevermind Serveradministration und serverseitige Scripte 2 19.09.2008 10:27
Verständnisfrage bzgl. Rahmen und eines Abstandes Arachon` CSS 2 22.01.2006 13:23


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:37 Uhr.