というディレクトリ内にファイルがありますwww/sub_dir
。そのsub_dir
ディレクトリ内のインデックス ファイルは、 img/logo.png
.
すべての画像にフルパスを使用する代わりに、ファイルの代わりにディレクトリを参照する.htaccess
ファイルを配置できますか?www/img
www/sub_dir/img
<base href="...">
該当する場合は、の使用を検討してください。このように、どのサブディレクトリにいるかに関係なく、、などを使用できimg/
ますcss/
。
これが単一の特定のフォルダーである場合は、の使用を検討してsymlinks
ください。ただ、 Apache構成または.htaccessln -s ../img .
に追加してください。Options +FollowSymLinks
サブフォルダ内のファイルで簡単に使用でき/img/logo.png
ます...../img/logo.png
上記のいずれの提案も選択できない場合は、次の書き換えルールをWebルートの.htaccessに追加します。
RewriteEngine on
RewriteBase /
RewriteRule ^sub_folder/(img/.*) $1 [L]
mod_rewrite と .htaccess を有効にしてからhttpd.conf
、このコードをディレクトリの.htaccess
下に配置します。DOCUMENT_ROOT
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
RewriteRule /(img/.+)$ $1 [NC,L]
/
www が Web ルートの場合、画像の uri に先頭を付けることができます。たとえば、画像が にある場合http://www.yoursite.com/img/logo.png
、サイト上の任意のサブディレクトリに/img/logo.png
アクセスしてアクセスできます。リーディング/
は単に「トップレベル」を意味します。/img/logo.png
つまり、「最上位、次にimg
フォルダ、次にファイルlogo.png
」という意味です
Try this .htaccess file in your /www/sub_dir/img/ directory
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*)$ /www/img/$1 [QSA,L]