2

誰もがこれで与えることができるどんな助けも受け入れてください、

私は古いURL構造を持っています:products / category(categoryは動的であり、例としてのみ使用されます)そして私はこれを行うためにcategory/productsに変更しようとしています

RewriteRule ^(.*)/products index.php?category=$1

これは機能していますが、問題は私の画像が画像/製品/画像として保存されており、ルールがすべての画像リンクを書き込んでいることです。

私はもう試した:

RewriteRule ^images/products/(.*) images/products/$1

画像を書き換えるだけですが、機能しているとは言えません

私のhtaccessファイルは次のようになります。

RewriteRule ^images/products/(.*) images/products/$1

RewriteRule ^(.*)/products index.php?category=$1

前もって感謝します、

ダン

4

2 に答える 2

0

最も簡単なのは、既存のディレクトリとファイル(イメージ...)のパスを書き換えないルールを追加することです。

これを行うには、書き換えルールの前に次のルールを追加します。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)/products index.php?category=$1
于 2012-04-20T14:17:42.787 に答える
0

Jeroenの答えも同様に機能しますが、エンドポイントとしてルールを指定することもできます

RewriteRule ^images/products/(.*) images/products/$1 [L]
RewriteRule ^(.*)/products index.php?category=$1

'[L]'は、最初のルールが期待どおりに機能するため、2番目のルールが解析されないようにする必要があります。

于 2012-04-20T14:47:57.207 に答える