0

私はほとんどサイト全体を開発していて、mod_rewriteを実装しないのは愚かでした。私は今そうしたいと思い、テストページを行いました。mod_Rewriteは完全に機能しますが、すべてのimaegが新しいページのURLにリンクされているという問題があります。次に例を示します。

www.mysite.com/county/Kent.html

から

www.mysite.com/sector.php?county=kent

それはうまく機能しますが、新しいリンクにアクセスすると、画像のURLがこれに変更されます。

mysite.com/county/images/widMot.png

'images'フォルダが実際には存在しない'county'フォルダにあるかのように。この画像リンクの変更を無視する書き換えルールはありますか?または私が欠けているもの?

編集:要求に応じて:

...
RewriteEngine On
RewriteRule ^county/([^/]*)\.html$ /sector.php?county=$1 [L]
...

編集:投稿された回答は優れていて、画像の問題を解決しましたが、cssファイルが/images/ディレクトリの後に配置されるという問題で立ち往生しました。多くの場合、簡単な修正でそれらをそこに配置しますが、他の方法はありませんか?

4

2 に答える 2

1

<base>HTMLタグを見てください。

http://www.w3schools.com/tags/tag_base.asp

サイトのベース URL を定義できます。その後、作成されたリンク/images/someimage.pngはルート ディレクトリのimages/.

編集: より具体的に言うと、スラッシュで始まるすべての相対 URL は、/ドメイン名の直後に開始されます。

于 2012-07-13T10:10:33.573 に答える
0

次のようなものを試してください:

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteRule YOUR REWRITE RULE
</IfModule>

要求されたURLがサーバー上の実際のファイルでない限り、すべてを書き換えルールに渡す必要があります。

于 2012-07-13T10:10:28.287 に答える