2009-07-24 10 views
0

Ich versuche, die Daten nach der URL zu erhalten und zurück an die Homepage gesendet. Ich hatte Fehler in der .htaccess-Datei auf einem Server, also probiere ich es auf einem anderen Server aus.mod_rewrite rules

Die Links auf der Seite http://www.newbiemoneymakers.com/bank/ sollten direkt zu http://www.newbiemoneymakers.com/bank/index.php tun, wo ich dann den Titel bekomme.

Meine .htaccess-Datei sagt:

RewriteEngine on 
RewriteRule ^http://www.newbiemoneymakers.com/bank/([^/\.]+)/?$ index.php?title=$1 [L] 

Meine Index-Seite sagt:

<?php 

    include('includes/functions.php'); 

    $activeTab = "navhome"; 
    $sent = false; 

    $title = (isset($_GET['title']))? mysql_real_escape_string($_GET['title']) : 'Home';  
    $title = str_replace('-',' ', $title); 

    if($title != '') { 

     $sql = "SELECT * 
       FROM contents 
       WHERE name LIKE '%$title%' 
       LIMIT 1"; 

     $result = @mysql_query($sql);  
     $row = mysql_fetch_assoc($result);  
    } 

    //Set page title 
    $pagetitle = (isset($row['name']) && $title != 'Home')? ucwords($row['name']) : "Bank Charges"; 
?> 

Aber wenn ich auf einen der Links klicken (z http://www.newbiemoneymakers.com/bank/bank-charges-refund/) es gibt mir eine 404-Seite!

Wissen Sie, wo ich falsch liege?

Ian

Antwort

2

Das Muster eines RewriteRule nur agains dem URI-Pfad getestet wird (in .htaccess Dateien ohne die kontextuelle per-Verzeichnispräfix, also im Wurzelverzeichnis ohne das führende /).

dies sollte also funktionieren:

RewriteRule ^bank/([^/.]+)/?$ bank/index.php?title=$1 [L] 
+0

Ich kann es immer noch nicht an die Arbeit! Meine .htaccess Datei sagt jetzt: RewriteEngine on RewriteRule^Bank /([^/.]+)/?$ Bank/index.php? title = $ 1 [L] Ich habe es in das Verzeichnis und in die Root-Verzeichnis, aber immer noch eine 404! –

+0

Meine Regel war für den .htaccess in Ihrem Stammverzeichnis gedacht. Und es funktioniert für mich. Bist du sicher, dass mod_rewrite aktiviert ist? – Gumbo

+0

Ye, ich fragte das Hosting, ob es installiert und aktiviert war! –