0

私は何日も壁に頭をぶつけてきました、そして私は私がより近くにいることを知っています、しかし私はこの.htaccessを機能させる方法がありません。

私はこのリンクを持っています:

http://rebateninja.com?page=reviews&id=B005KMDV9A&review=Shark-Navigator-Professional-Lift-Away-Vacuum-Clea

そして、私はそれをこのように呼びたいです:

http://rebateninja.com/reviews/B005KMDV9A/Shark-Navigator-Professional-Lift-Away-Vacuum-Clea

私のhtacessはこれを持っています:

RewriteEngine On
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)$ index.php?page=$1&id=$2&review=$3 [L]

しかし、このページは、次のような存在しないリソースをポイントしようとする404エラーでいっぱいです。

http://rebateninja.com/reviews/B005KMDV9A/css/960.css

それ以外の

http://rebateninja.com/css/960.css

私が間違っていることは何ですか?

4

3 に答える 3

0

はい、そうです、あなた.htaccessは正しいです...

で変更[L]する[NC] と、ocde は次のようになります。

RewriteEngine On 
RewriteRule ^([^/.]+)/([^/.]+)/([^/.]+)$ index.php?page=$1&id=$2&review=$3 [NC]

それが助けてくれることを願っています

于 2012-12-18T02:56:08.327 に答える
0

実際のサイトを見ると、css ファイルへのリンクは、ルートではなくcss/960.css現在のフォルダーで検索されているようです。http://rebateninja.com/reviews/B005KMDV9A/

この投稿をチェックしてください - https://stackoverflow.com/a/3900018/1791606

于 2012-12-18T03:06:12.347 に答える
0

あなたのリンクは絶対的ではなく相対的です。これは、ブラウザーがベース URI を推測しようとすることを意味し、ブラウザーがアクセスする URL は次のようになります。

http://rebateninja.com/reviews/B005KMDV9A/Shark-Navigator-Professional-Lift-Away-Vacuum-Clea

つまり、コンテンツ内の相対 URL にはベース/reviews/B005KMDV9A/が関連付けられているため、相対リンクが次のようになっている場合:

<link rel="stylesheet" type="text/css" href="css/960.css">

結果の要求は に対して行われhttp://rebateninja.com/reviews/B005KMDV9A/css/960.cssます。絶対リンクを使用するか、次を追加する必要があります。

<base href="/">

ページのヘッダーに。

于 2012-12-18T05:38:44.690 に答える