私はdrupalサイト http://example.com にあり、同じサイトの開発バージョン http://another.example。 com/subdir 。開発バージョンで作業しているとき、/ sites/default/files /を参照するコンテンツ(イメージなど)は、パスの「/ subdir」部分を含める必要があるため機能しません。BASE
が含まれている場合、href
要素のhref
属性は$base_url
で始まるURLに影響を与えないため、/
の設定は機能しません。サブディレクトリ。
イメージ参照にサブディレクトリを含める最良の方法は何ですか?サーバーの書き換えに頼る必要がありますか?
サイトをよりポータブルにするために、ここでできることは2つあります。
テンプレートで:
l()
を使用しますテーマで画像を参照する必要がある場合:
<img src="<?php echo $base_path . drupal_get_path('theme', 'themename'); ?>/logo.png" />
あなたのコンテンツ:
また、Apache mod_rewriteルールは次のようになります。
# Redirect all files requests to a subdir
RewriteRule ^/?sites/default/files/(.*) /subdir/sites/default/files/$1 [R=301,L]
モジュール Pathologic がこれに役立ちます。
開発サイトのドメイン全体に柔軟性がある場合は、以下を使用すればすべてが機能することがわかります。
example.com->生産
dev.example.com->開発
サイトのディレクトリは、どちらの場合も/sites/example.comとして機能します。ドメインに一致するようにbase_urlを変更するだけです。