1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Frage zu mod_rewrite

Dieses Thema im Forum "Web-Programmierung" wurde erstellt von Slashwalker, 19.04.08.

  1. Slashwalker

    Slashwalker Winterbanana

    Dabei seit:
    15.05.06
    Beiträge:
    2.190
    Hallo ATler,
    ich arbeite gerade an einer datenbankgestützten Seite, welche immer in der Form index.cfm?site=zu-ladende-seite aufgerufen wird. Um die URL für Suchmaschinen umzuschreiben, wollte ich mit mod_rewrite arbeiten.

    Bei Google habe ich folgendes Tutorial gefunden
    http://www.ranking-konzept.de/mod_rewrite.html

    Also habe ich die .htaccess für mein Zwecke umgeschrieben.
    RewriteEngine On
    RewriteRule ^(.*)$ /index.cfm?site=$1 [L]


    Wenn ich nun http://localhost/seite1 aufrufe, bekomme ich einen 404, denn Seite1 existiert ja nicht wirklich. Aber was ist an der Condition falsch?

    Beim Aufruf von http://localhost/seite1 soll index.cfm?site=seite1 aufgerufen werden.
     
  2. Slashwalker

    Slashwalker Winterbanana

    Dabei seit:
    15.05.06
    Beiträge:
    2.190
    So, ich hab jetzt noch ein anderes Tutorial gefunden:
    http://www.aboutwebdesign.de/awd/content/1042302787.shtml

    Und es entsprechend umgeschrieben
    RewriteEngine On
    RewriteRule ^/seiten/([0-9]+)$ /index.cfm?site=$1

    Und dann
    http://localhost/seiten/1
    Die index.cfm wurde entsprechend angepasst um auf site=1 reagieren zu können.

    Auch das führt zu einem 404 Not found. Lokal als auch auf einem Produktiv-Server.

    Edith:

    Mit folgenden Conditions funktioniert es
    RewriteEngine On
    RewriteRule (.*)\.htm index.cfm?site=$1

    Jetzt muss ich das .htm noch wegbekommen.

    Edith die zweite:
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^([a-zA-Z0-9]+)$ index.cfm?site=$1

    Funktioniert teilweise.
    Wenn ich http://loclahost/seite5 aufrufe erhalte ich einen ColdFusion Fehler, da die site 5 in index.cfm nicht definiert ist.

    Ruf ich aber http://localhost/seite2 auf erhalte ich einen 404, site 2 ist definiert.
     
    #2 Slashwalker, 19.04.08
    Zuletzt bearbeitet: 19.04.08
  3. Slashwalker

    Slashwalker Winterbanana

    Dabei seit:
    15.05.06
    Beiträge:
    2.190
    Jetzt gehts!

    Options -Multiviews
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^([a-zA-Z0-9]+)$ index.cfm?site=$1
     

Diese Seite empfehlen