WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik



Im Homepage und Webhosting-Forum --- mod_rewrite & Unterordner

Rund um die Administration von Server und Webserver, Apache, Linux, Mailserver, FTP, SSH, MySql, Windows Server, u.v.m.

Forum » Server-Administration und Verwaltung » mod_rewrite & Unterordner - 05 Mai 2024 Antworten
im Forum für Webhosting Homepage gefunden:
mod_rewrite & Unterordner
LordAvalon
Pixelschubser
Threadstarter




Beiträge: 8

Hallo Leute!
Hoffe, ihr könnt mir helfen.
Meine Seite ist erstmal die index.php . Mit $_GET wird $id und $id2 übertragen. $id steht für den Namen der Datei, die im Hauptteil includet wird und $id2 für den Ordnernamen. Das klappt auch alles soweit: Wenn ich index.php?id=bla&id2=blub aufrufe, wird die Datei blub/bla.php includet. Wenn $id2 nicht übermitelt wird, wird die Datei bla.php aufgerufen.

Nun habe ich in meine .htaccess folgendes geschrieben:

RewriteEngine on
RewriteRule ^(.*)\.html$ index.php?id=$1

Wenn ich nun die Datei bla.html aufrufe, wird index.php?id=bla aufgerufen.

Wenn ich diesen Code nehme...

RewriteEngine on
RewriteRule ^(.*)/(.*)\.html$ index.php?id=$2&id2=$1

... werden die Daten in den Unterordnern prima includet, jedoch funktionieren die Links auf die Daten im gleichen Ordner nicht mehr.

Es soll aber beides funktionieren. Dazu muss also erkannt werden, ob mit $id2 eine Variable übergeben wird. Sollte das nicht der Fall sein, soll die Datei, die sich im gleichen Ordner befindet, aufgerufen werden. Wenn sie übergeben wird, dann die Datei id2/id.php .

Wie mache ich das ? Oder gibt es noch andere Methoden, das zu schaffen ?

  Profil   Editieren   Zitieren
einstein
Quasselstrippe




Beiträge: 241

@mod: in Forum Server-Administration schieben.

In deiner Regular Expression ist folgender Haken:
. steht für jedes beliebige Zeichen als auch ein /, demzufolge macht es wenig Sinn
mit
(jedes beliebige zeichen) / (jedes beliebige zeichen) zu arbeiten.

Siehe auch hier

Diese Nachricht wurde geändert von: einstein
  Profil   Editieren   Zitieren
LordAvalon
Pixelschubser
Threadstarter




Beiträge: 8

Dank für die schnelle Antwort !

Aber ich brauche doch den Slash als Trennzeichen zwischen Ordnername und Filname.... Wie soll ich das denn genau sonst machen ?

  Profil   Editieren   Zitieren
einstein
Quasselstrippe




Beiträge: 241

Wenn du die links gelesen hättest....
hättest du herausgefunden, dass
du das (.*) bspw. mit
([A-Za-z0-9_]+)
ersetzen könntest

  Profil   Editieren   Zitieren
LordAvalon
Pixelschubser
Threadstarter




Beiträge: 8

Ich habe die Links gelesen gehabt. Und ich habe auch das (.*) ersetzt. Aber es funktioniert genauso wie vorher.

Die erstellten HTML Daten in den Unterordnern funktionieren, aber die im gleichen Ordner nicht.

  Profil   Editieren   Zitieren
einstein
Quasselstrippe




Beiträge: 241

Dann brauchst du eben 2 Regeln:
1: 
2: 
3: 
4: 
5:
RewriteEngine on
RewriteRule ^([A-Za-z0-9_]+).html$ index.php?id2=$1 
RewriteRule ^([A-Za-z0-9_]+)/([A-Za-z0-9_]+).html$ index.php?id=$2&id2=$1


Evtl verstehe ich dein Problem auch nicht ganz: Was bedeutet
jedoch funktionieren die Links auf die Daten im gleichen Ordner nicht mehr.

  Profil   Editieren   Zitieren
LordAvalon
Pixelschubser
Threadstarter




Beiträge: 8

Danke, danke, danke !!

Jetzt klappt es doch ! Hab da wohl irgendwas doch falsch gemacht.

Hab aber noch eine Frage:
Wenn ich nun die Seite index.php?id=bla&id2=$blub durch den Verweis blub/bla.html aufgerufen wird, können logischerweise die Grafiken nicht mehr angezeigt werden, da sich der relative Pfad geändert hat. Die Grafiken befinden sich im Ordner "../images/" und nicht "/images/" .

Wie kriege ich das hin, dass die Grafiken und Links richtig verlinkt sind ?

EDIT:
Hab gerade gemerkt, dass das jetzt logischerweise mit allen Links der Fall ist, da der relative Pfad sich überall verändert hat, aber im Quelltext gleichgeblieben ist.

Diese Nachricht wurde geändert von: LordAvalon
  Profil   Editieren   Zitieren
Philipp Gérard
Foren-Team




Beiträge: 1502

absolute links benutzen

---
Arbeit ist das Feuer der Gestaltung. - Marx

  Profil   E-Mail   Website   Editieren   Zitieren
LordAvalon
Pixelschubser
Threadstarter




Beiträge: 8

gibts da keine andere alternative ?

  Profil   Editieren   Zitieren
Can
Halbgott




Beiträge: 1324

LordAvalon schrieb am 17.02.2004 15:54
gibts da keine andere alternative ?


Keine gute. Setz den absoluten Pfad (http://domainname.de/) doch als Konstante (mit global), oder Umgebungsvariable (putenv) ...

---
"S-púrlawits'chkâ A-ngáse gûrewüdíx" - Zaphrot Bibelprox

  Profil   E-Mail   Editieren   Zitieren
LordAvalon
Pixelschubser
Threadstarter




Beiträge: 8

Hab ich gemacht und es klappt alles

Hab aber eine andere Frage: Oben steht ja der Code für die .htacces bei einem Unterordner.

Wenn ich jetzt noch einen Unterordner im Unterordner habe, müsste das ganze dann ja so aussehen:

1:
RewriteRule ^([A-Za-z0-9_]+)/([A-Za-z0-9_]+)/([A-Za-z0-9_]+).html$ index.php?id=$2&id2=$1&id3=$3


(wenn $id2/$id/$id3.html aufgerufen werden soll.)

Nur klappt es irgendwie nicht ... Seht ihr darin ein Fehler ?

In meiner index.php, hab ich an der Stelle, wo es darauf ankommt, was includet wird, folgendes stehen:

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29:



Oder ist darin ein Fehler ?

  Profil   Editieren   Zitieren
 

Antworten
Forum » Server-Administration und Verwaltung » mod_rewrite & Unterordner

Aktuelle Beiträge zur Hilfe im Forum für Homepage - mod_rewrite & Unterordner im Forum Homepage Hosting AntwortenLetztes Posting
Wie stellt man von http auf https um?
in "Server-Administration und Verwaltung"
1 18.07.2021 02:49 von Rieke
Mailserver einrichten
in "Server-Administration und Verwaltung"
0 09.05.2021 01:11 von FastSpeeddev
Generalüberholung der Unternehmensserver
in "Server-Administration und Verwaltung"
9 22.03.2021 13:08 von Julien
Ich kann eine bestimmte Website nicht via WLAN aufrufen
in "Server-Administration und Verwaltung"
2 14.02.2021 22:52 von websiteworker
DDNS und LetsEncrypt geht nicht
in "Server-Administration und Verwaltung"
3 27.12.2020 12:38 von anitaskita
Wie bewertet ihr Cassandra als DBMS?
in "Server-Administration und Verwaltung"
1 06.10.2020 14:38 von Petzibär
Office365
in "Server-Administration und Verwaltung"
2 22.04.2020 13:07 von minad
Bilder nur auf bestimmte Domain zulassen
in "Server-Administration und Verwaltung"
2 30.10.2019 09:55 von micha67
Marketing Software
in "Server-Administration und Verwaltung"
4 02.03.2019 15:44 von Peter1165
Mainboard für AMD Server?
in "Server-Administration und Verwaltung"
2 16.11.2018 21:11 von andyy
Typo3 4.6 mit Imagemagick oder Graphicsmagick
in "Server-Administration und Verwaltung"
3 16.11.2018 21:10 von andyy
Nextcloud konfigurieren ohne Systemzugriff
in "Server-Administration und Verwaltung"
0 05.09.2018 09:13 von Flash
mod_rewrite - example.com/verz1/verz2 geht nicht
in "Server-Administration und Verwaltung"
1 16.08.2018 09:17 von Maik89



Besucher : 7987185    Heute : 150     Gestern : 269     Online : 11     5.5.2024    10:45      0 Besucher in den letzten 60 Sekunden        
Nach oben