2009-07-24 12 views
0

URLの後にデータを取得しようとしていて、ホームページに戻ってきました。あるサーバ上の.htaccessファイルにエラーがあり、別のサーバで試しています。mod_rewriteのルール

http://www.newbiemoneymakers.com/bank/の横にあるリンクは、http://www.newbiemoneymakers.com/bank/index.phpに直接リンクして、タイトルを取得してください。

私の.htaccessファイルは言う:

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

私のインデックスページは言う:

<?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"; 
?> 

しかし、私は任意のリンクをクリックしたとき(例えば、http://www.newbiemoneymakers.com/bank/bank-charges-refund/)それは私に404ページを提供します!

どこが間違っているのか分かりますか?

RewriteRuleのパターンがちょうど(大手/せずに、コンテキストごとのディレクトリ接頭辞なしで.htaccessファイル内のルートディレクトリにあるので)URIパスagainsテストされ

答えて

2

イアン。

だから、これは動作するはずです:

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

を私はまだそれを動作させることはできません!私の.htaccessファイルは次のようになります: RewriteEngine on RewriteRule^bank /([^/.]+)/?$ bank/index.php?title = $ 1 [L] 私はディレクトリに、ルートディレクトリが、まだ404を取得しています! –

+0

私のルールはルートディレクトリの.htaccessを対象としていました。それは私のために働く。 mod_rewriteが有効になっていますか? – Gumbo

+0

はい、私はそれがインストールされて有効になっている場合、ホスティングに尋ねた! –

関連する問題