Rolf B: RewriteRule, Einträge werden nicht richtig aufgelöst

Beitrag lesen

Hallo David,

Ich hoffe mal das ich deine Frage richtig verstehe.

Hast Du.

Deine Rewrite-Rules geben die URL-Struktur, die Du da hereingibst, aber nicht wieder. Wenn die .htaccess im test-Order liegt, kommt

http://raspberrypi/test/adressen/namen_mit_a_1.html

in der RewriteRule als

adressen/namen_mit_a_1.html

an, d.h. das ist der String, auf den das Pattern in der RewriteRule passen muss.

RewriteBase /test/

Ich glaube, die RewriteBase stört hier nur, weil Du die .htaccess ja schon im test-Ordner drinstehen hast.

Deine Rules müssten so aussehen:

RewriteRule ^adressen/namen_mit_([a-z]+)_([0-9]+).html index.php?page=namen&buchstabe=$1&nummer=$2
RewriteRule ^adressen/namen_mit_([a-z]+).html index.php?page=namen&buchstabe=$1

Ob dieser Pfadteil "adressen/" nötig ist, kann man diskutieren. Technisch erforderlich ist das nicht, das ist deine persönliche Geschmacksentscheidung.

Es hat vor allem Auswirkungen, wenn Du auf der so generierten Seite Ressourcen einbindest (CSS, JS, Bilder), denn der Browser meint ja, die Seite würde aus dem adressen-Ordner abgerufen. Ein HTML wie

<img src="bild.jpg">

würde dann aus dem adressen-Ordner abgerufen. Das muss man bei solchen Transformationen im Auge behalten.

Da Du eh keine echten HTML Seiten abrufst, könntest Du das .html Suffix in den URLs auch weglassen. Es sei denn, du möchtest gern den Eindruck vortäuschen, eine unbeholfene statische Seitensammlung erstellt zu haben.

Rolf

--
sumpsi - posui - obstruxi