0

mod_rewrite を使用して書き換えを行うこのページがあります

http://example.com/dev/main/1234

http://example.com/dev/index.php?page=main&id=1234

ページで mod_rewrite を正常に機能させましたが、まだ CSS と画像に問題があります。

  1 Options +FollowSymLinks
  2 
  3 ReWriteEngine on
  4 RewriteRule ^(.*)/([^/\.]+)/?$ /dev/index.php?page=$1&id=$2 [L]
  5 RewriteCond %{REQUEST_FILENAME} !-d
  6 RewriteCond %{REQUEST_FILENAME} !-f

css は /var/www/dev/css にあり、イメージは /var/www/dev/img にあります。http://example.com/dev/main/1234にアクセスしたときに mod_rewrite に同じイメージと css をロードさせるにはどうすればよいですか? ありがとう!

4

2 に答える 2

0

うわあ。いくつかのハッキングで動作するようになりました。これが正しい方法かどうかはわかりませんが、機能します:

RewriteRule ^(.*)/css/(.+)?$ css/$2 [NC,L]
RewriteRule ^(.*)/img/(.+)?$ img/$2 [NC,L]
于 2012-08-07T12:37:44.927 に答える
0

htaccess にこれらの 2 つの条件がありますか (htaccess は /dev フォルダーにあると想定しています)。

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

そうでない場合、正規表現 (css/image.jpg) と一致するため、画像の URL が書き換えられます。

これらの 2 つの条件により、リクエストが実際のパス (ファイルまたはフォルダーを指している) の場合に URL の書き換えが回避されます。

于 2012-08-07T12:07:55.377 に答える