0

私のウェブサイトは、interspire ショッピング カート ベースで、次のようなリンクを生成します。

http://abcd.com/products/Mac-Pro.html (Mac Pro は Apple カタログに掲載されています)

これは非常に醜く、seo フレンドリーではありません。

.htaccess mod rewrite のみを使用して以下になる必要があります

http://abcd.com/Apple/Mac-Pro.html

私が使用した:

 RewriteRule .* index.php/$0 [PT]

しかし、私のサーバーは次のように言います:

見つかりません

要求された URL /products/ は、このサーバーで見つかりませんでした。

さらに、ErrorDocument を使用して要求を処理しようとしたときに、404 Not Found エラーが発生しました。

URLを短くするのに役立ちますが、そのエラーはありません。

4

1 に答える 1

0

ルールを次のように切り替える必要があります。

RewriteEngine On
RewriteRule .* /index.php?path=$0 [PT]

このようにして、要求されたパスは、 という変数のクエリ文字列で index.php スクリプトに静かに渡されますpath

次に、index.php スクリプトで、次のように変数 $_GET['path'] からこの値を取得できます。

$path_requested = $_GET['path'];
于 2013-05-06T21:17:06.303 に答える