1

スター レート スクリプトに問題があります。動的 URL で正常に動作しています。例:

/index.php?md=詳細&id2

ただし、同じリンクでは機能しませんが、静的では機能します。例:

/ads/test-add-idn2.html

書き換えルールの例:

RewriteRule ^ads/(. )-idn(. ).html$ index.php?md=details&id=$2 [L,NE]

静的ではなく動的 URL で機能する「require」の例:

require('_star-rating.php'); // データベース接続情報を取得します

"_star-rating.php" を呼び出して静的 URL を操作する方法は?

別の書き換えルールで?

ありがとう

4

3 に答える 3

0

あなたのルールは正しくないと思います。試す:

RewriteRule ^ads/(.*?)-idn(\d+)\.html$ index.php?md=details&id=$2 [L,NE]
于 2012-10-01T20:35:11.323 に答える
0

書き換えルールが一致しません。前にURI内のすべてをキャプチャし、-idnその後に番号を取得しようとしている場合は、次のようにパターンを変更する必要があります。

RewriteRule ^ads/(.*)-idn([0-9]*)\.html$ index.php?md=details&id=$2 [L,NE]

を使用して、の前のすべてのテキスト*のワイルドカードを照合することに注意してください。また、文字クラスを使用して、リテラルの前後に0個以上の数値が含まれることを指定します(ワイルドカードとして扱われないようにエスケープする必要があります)。.-idn[0-9]-idn..

于 2012-10-01T20:36:06.447 に答える
0

正しい情報を選択していません:

^ads/(.)-idn(.).html$
            ^^^ a dot can be any character, but only one
     ^^^ same here

おそらく次のようなものが必要です。

^ads/([-\w]+)-idn(\d+)\.html$
  • [-\w]+: 1 つまたは複数の単語の文字または-記号
  • \d+: 1 つ以上の数字

編集:.htaccessこれ(ファイル)は、Webブラウザ/ httpを介して呼び出されるURLにのみ影響することに注意してください。includeまたはphpを使用しているときはrequire、ローカルファイルシステムを扱っており、それはどの.htaccessファイルとも関係ありません。

于 2012-10-01T20:33:22.917 に答える