2

誰か次の2行を説明してくれませんか?

RewriteEngine on
RewriteRule ^(.*)-(.*)-(.*)$   index.php?page=$1&id=$2&im=$3

.htaccessファイルについて何も分からないので詳しく説明できればと思います。

どんな体でも私を助けることができますか?私は任意の提案に感謝..ありがとう..

4

2 に答える 2

2

RewriteRule には主に 3 つが含まれているため、パーツと呼びます。

  1. ^(.*)-(.*)-(.*)$ これはあなたのURLが書き換えられるルールです
  2. index.php?page=$1&id=$2&im=$3 書き換えるURLのルールです
  3. 2番目のルールの後、永続的なリダイレクトであることを意味するようなリダイレクトタイプを追加できます[R=301]

したがって、基本的にルールは次のようになります。
http://domain.com/pagenumber-idnumber-imdefinition
From
http://domain.com/index.php?page=pagenumber&id=idnumber&im=imdefinition

私が明確だったことを願っています...

于 2012-09-28T18:46:20.377 に答える
2

ルールは、各グループが括弧内にある、いわゆる正規表現です。ドットは単一のランダム文字で、アスタリスクで 0...n 回変更できます。プラス記号は 1...n を意味します。修飾子が追加されていない場合、正確に 1 文字が必要です。

Tim Cooper が間違いを犯したかどうかはわかりませんが、元の書き換えルール ( ^(.)-(.)-(.*)$)に応答しています。

このルールは、http ://example.com/ab-def のような URL を受け取り、 index.php?page=a&id=b&im=def にリダイレクトします。

また、適切なパターンを持たない入力は一致しないため、URL http://example.com/aaa-bb-defは機能しないことも知っておく必要があります。

于 2012-09-28T18:41:19.623 に答える