Bernd S.: bitte einmal "mod_rewrite"

Hallo,

habe relativ wenig Ahnung von mod_rewrite. Wäre schön, wenn mir da jemand ein bischen behilflich sein könnte...

Also ich habe meine .htaccess um folgendes erweitert:

RewriteEngine on
RewriteCond %{REQUEST_URI} news/(.*).html$
RewriteRule news/(.*).html$ /news.php?id=$1

ich habe z.B. folgende news.php:

<?

import_request_variables("gp","VAR_");

if($VAR_id == 1) echo "Seite 1";
else if($VAR_id == 2) echo "Seite 2";
else echo "Startseite";

?>

Wenn ich nun im Browser www.meinedomain.de/news/1.html aufrufe, dann sollte doch news.php?id=1 ausgeführt werden und damit der if-Fall eintreten, stattdessen tritt jedoch der else-Fall ein, d.h. als Ausgabe erscheint "Startseite".
Woran liegt das? Oder habe ich das Prinzip nicht verstanden :-(?

Gruß
Bernd S.

  1. Hast du schon mal deinen provider gefragt?

    Je nach provider sind die einstellungen da sehr variabel

    gruss

  2. Hallo Bernd,

    RewriteEngine on
    RewriteCond %{REQUEST_URI} news/(.*).html$
    RewriteRule news/(.*).html$ /news.php?id=$1

    Gib noch ein

    RewriteBase /

    an. (oder ein RewriteBase /a/b/c, falls die Webseite unter /a/b/c liegt)

    Ach ja, IMHO solltest Du besser folgende RewriteRule angeben:

    RewriteRule ^news/(.*).html$  news.php?id=$1

    Also:

    RewriteEngine on
    RewriteBase /
    RewriteCond %{REQUEST_URI} news/(.*).html$
    RewriteRule ^news/(.*).html$  news.php?id=$1

    Viele Grüße,
    Christian

    --
    Hast Du einen Beitrag? Nur her damit!
    http://aktuell.de.selfhtml.org/tippstricks/beitrag.htm
    SELF-Code: (http://emmanuel.dammerer.at/selfcode.html)
    sh:) fo:) ch:] rl:( br:> n4:& ie:% mo:) va:) de:] zu:) fl:( js:| ss:) ls:[