Seiten und htaccess Problem

Flextone

Erfahrenes Mitglied
Hi

ich habe ein Problem bei folgender Programmierung.

Ich habe diverse Seiten die mit index.php?section=XYZ gezogen werden.
Ich arbeite mit htaccess um ein mod_rewrite zu gestalten.

Nun gibt es zwei folgende Cases um die Seiten zu switchen.

ins und ins_add

Ich habe gemerkt das htaccess nur damit klar kommt wenn nach ins andere Seitenamen genutzt werden. Daas heißt eine ins_add gibt es für htaccess nicht, da ins bereits im Case enthalten war.
Nun weiß ich nicht genau welche Commandos in der htaccess-File jede einzelne Regel nach einem Treffer abbricht, damit man keinen Endlos durchlauf hat und die ins und ins_add gezogen werden können.

Ein Text mit xxx anstatt ins_add war erfolgreich.

Brauch Hilfe.

Danke!
 
Sehr viele verwirrende Worte. Könntest du das Problem bitte noch einmal etwas verständlicher erläutern.
 
Gerne.

Also:

Ich lade meine einzelnen Seite in meine index.php
PHP:
  	case "ins":
	include("pages/inserat.php");
	break;
So würde der Inhalt der Datei inserat.php eingeladen.

Das zusammen mit htaccess würde ins.html statt index.php?section=ins ergeben.

Nun habe ich aber einmal die section ins und einmal die Section ins_add.

ich vermute das htaccess nur die ersten 3 Buchstaben nimmt als ins. Weil ich das mit dem Test die Section in xxx umzubenennen teste konnte. Meine Seite war also über xxx.html zu finden.

Nun muss ich doch bestimmt htaccess sagen, er soll mehr als nur ins (weil es ins_add auch noch gibt) zu durchsuchen, weil sonst andere Seiten nicht mehr geladen werden können.
 
Hoffentlich hab ich jetzt alles richtig verstanden.

Deine Rewrite Rule besagt, das alle Zeichen von A-Z mehrmals vorkommen können.
"ins_add" enthält einen Unterstrich, vielleicht liegt es daran, das die Rule nicht greift.

Probier mal aus, das _ Zeichen in die RW Rule hinzuzufügen als gültiges Zeichen und schau obs dann geht.
 
Danke. Es lag am _

ich habe nun die Seite insadd getauft, mit welcher Regel könnte ich denn ein _ erlauben?
 
Die Zeichenklasse \w entspricht [a-zA-Z0-9_]. Daher lieber:
Code:
RewriteRule ^([a-z_]+)\.html$ index.php?section=$1 [L]
 
Zurück