#1
| |||
| |||
mod_rewriteIch wollte mod_rewrite anwenden um die Seite "index.php?id=home" auch unter "home.html" erreichen zu können. Also habe ich die Datei ".htaccess" erstellt und mit diesem Inhalt gefüllt: "RewriteEngine on RewriteRule ^home.html$ index.php?id=$home" Aber es tut nicht. Ich kann nun keine Datei aus dem gesamten Ordner mehr anzeigen lassen (keine erforderlichen Rechte und bla bla) . Was mache ich falsch ? |
#2
| |||
| |||
Mhh... ich kann`s nicht garantieren, aber bist du sicher, dass hinter dem id= ein $ stehen muss? __________________ Patrick Gotthardt Patrick Gotthardt on Software |
#3
| |||
| |||
Hab ich so irgendwo gelesen. Ich habe es auch schon ohne $ probiert. Es klappt aber nicht |
#4
| ||||
| ||||
PHP-Code: __________________ Daniel Richter Immer ein Besuch wert: TVBlogger.de - Aktuelle Nachrichten aus der Welt des Fernsehens |
#5
| ||||
| ||||
Der reguläre Ausdruck war auch ein bisschen fehlerhaft. Wenn du nur "home.html" durch "index.php?id=home" ersetzen willst reicht es wenn du "RewriteRule ^home.html$ index.php?id=home" schreibst. Wenn du allerdings alle *.html seiten nach index.php?id=xyz übersetzen willst sollte dir mit folgendem geholfen werden: RewriteRule ^(.*?)\.html$ index.php?id=$1 Ich konnts nicht testen da die Rewrite Engine bei mir nicht zum Einsatz kommt aber das sollte so stimmen. |
#6
| |||
| |||
Danke. Jetzt bin ich etwas weiter, aber nun steht da folgendes, wenn ich versuche die home.html aufzurufen: "Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator, root@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error. More information about this error may be available in the server error log." Dabei habe ich mich vorher extra beim Hoster informiert und der hat mir versichert, dass mod_rewrite unterstützt wird .... Woran liegt das jetzt ? |
#7
| ||||
| ||||
Wenn du es mit meinem Code gemacht hast, dann musst du die Seite mit home.htm aufrufen. __________________ Daniel Richter Immer ein Besuch wert: TVBlogger.de - Aktuelle Nachrichten aus der Welt des Fernsehens |
#8
| |||
| |||
schon klar, aber ich habe es mit dem von exe gemacht. deiner hat irgendwie auch nicht funktioniert |
#9
| ||||
| ||||
Hast du denn das "RewriteEngine On" in deiner .htaccess Datei gelassen? Ich habs zwar in meinem Beispiel ausgelassen, es gehört aber weiterhin in deine Datei. |
#10
| |||
| |||
das habe ich immer noch drin |
#11
| ||||
| ||||
wird auf dem server confixx benutzt? also ich hab das selbe problem mfg __________________ Björn C. Klein Welt-Held! PunkRockNews.de |
#12
| |||
| |||
Ja, Confixx. Aber ich weiss jetzt woran es bei mir liegt: Mein Hoster hat mir mitgeteilt, dass da wohl erst irgendeine Option von denen aus aktiviert werden müsse ... Nun ja, ich warte ... Aber noch eine Frage: Wie mache ich das denn dann mit der Weitergabe von Variablen, die per GET wieder erkannt werden ? Die Links müssen dann ja weiter auf Seiten verlinken, wie index.php?id=bla&id2=blub , oder ? Aber dann folgen ja die Suchmaschinen - Bots nicht mehr weiter ... Wie kann ich das anders lösen ? |
#13
| ||||
| ||||
könntest dich evtl auch erkundigen welche option das ist? ich möchte gerne auch mod rewrite haben!! __________________ Björn C. Klein Welt-Held! PunkRockNews.de |
#14
| ||||
| ||||
LordAvalon: die Links sollen selbstverständlich in dem neuen Format geschrieben werden. ModRewrite schreibt ja nicht die HTML Ausgaben um sondern Anfragen eines Browsers. Wenn du also via ModRewrite index.php?id=1&blah=2 in /1/2/seite.html umwandelst musst du auch in deinen Templates bzw. HTML Ausgaben /1/2/seite.html schreiben. |
#15
| ||||
| ||||
naja aber das mit der option da stimmt schon.. weil ich habe das selbe problem und habe mal bei einem anderen hoster meine komplette seite auf mod rewrite gehabt mfg __________________ Björn C. Klein Welt-Held! PunkRockNews.de |
#16
| ||||
| ||||
Eine Frage die mich schon länger beschäftigt und ich denke der Themenstarter wird damit auch ein Problem haben. Wenn ich jetzt index.php?seite=test in /seite/test umwandle dann kann ich ja $_GET['seite'] nicht mehr verwenden, weil er $seite nicht mehr mit test belegt. Dann müsste man ja vorher /seite/test wieder in index.php?seite=test umwandeln damit $seite auch wirklich 'test' enthält. wie jetzt bitte, oder?! |
#17
| ||||
| ||||
da kann ich dir gewisse abhilfe schaffen! PHP-Code: http://www.php-resource.de/forum/sho...threadid=12722 mehr zu dem thema aber ich denk ich weis, woran es liegt AllOverride = All oder so muss es in der httpd.conf lauten.. mfg __________________ Björn C. Klein Welt-Held! PunkRockNews.de |
#18
| ||||
| ||||
speziell zum thema mod_rewrite und confixx habe ich folgendes gefunden: http://www.confixx-forum.de/forum/sh...hlight=rewrite mfg __________________ Björn C. Klein Welt-Held! PunkRockNews.de |
#19
| ||||
| ||||
Zitat:
Code: RewriteEngine on RewriteRule ^(.*)\.html$ index.php?id=$1 Zitat:
|
#20
| |||
| |||
Haa, ich liebe euch Es geht !!! Und dafür habe ich so lange rumüberlegt und rumprobiert ! Danke, danke, danke. |
#21
| ||||
| ||||
weist du welche einstellung es war, die dein hoster umgestellt hat? mfg __________________ Björn C. Klein Welt-Held! PunkRockNews.de |
#22
| |||
| |||
Nein. Das ist die eMail: "Sehr geehrter Herr ..., Ihnen wurde soeben die Rechte gesetzt. Bitte testen Sie Ihr Script erneut. Bitte beachten Sie auch für zukünftige Fragen unser Helpsystem, das Sie unter http://faq.udmedia.de finden. Freundliche Grüße sendet Ihr UD Media Team Thomas Borgans Aber wenn du bei deinem Hoster nachfragst, wirst du es sicher erfahren Jetzt hab ich aber noch eine Frage ... Wie lautet denn die Anweisungen dafür, dass wenn die Datei index.php?id=bla&id2=blub lautet, dann die Datei blub/bla.html geladen wird ? Und falls keine id2 vorhanden ist, soll nur die Datei bla.html geladen werden. id2 ist also praktisch der Ordner und id der name der Datei. |
#23
| ||||
| ||||
Wenn du eine Anfrage auf blub/blah.html in index.php?id=blah&id2=blub umwandeln willst geht das folgendermaßen: Code: RewriteRule ^(.*)/(.*)\.html$ index.php?id=$2&id2=$1 |
#24
| |||
| |||
Aber es soll irgendwie selbstständig erkannt werden, ob id2 vorhanden ist oder nicht. Und wenn es vorhanden ist, soll die Seite id2/id.html geladen werden und sonst eben nur die Seite id.html . |
#25
| |||
| |||
Andere Frage: Ich habe in meiner Seite das Menü und den Inhaltsteil in meine Index - Seite includet. Wenn ich jetzt mit der Mod - Rewrite Methode einen Verweis von bla/blub.html setze und dieser geöffnet wird, steht ja in der Adresszeile .../bla/blub.html . Wenn ich aber jetzt einen der Links anklicke, der sich wieder auf den übergeordneten Ordner bezieht, wird das Verzeichnnis trotzdem nicht gewechselt und es wird nach /bla/home.html gesucht, obwohl sich die home.html in dem Ordner darüber befindet. Wie kann ich das Problem im Menü beheben, ohne ein komplett anderes für jeden Orner machen zu müssen ? (wird ja immer nur das eine includet) |
Stichworte |
- |
Themen-Optionen | |
Thema bewerten | |