投稿者: shirane 日付: 2010-06-11 (金) 23:54
Posted in
imagefield とファイルシステムパス変更について。
Drupal のファイルシステムパスを後から変更すると、imagefield で既存ノードに添付していた各ノードの画像が表示されなくなる。
原因は、files データベーステーブルのレコードが、変更前のファイルシステムパスのままになっているため。(files テーブルはアップロードしたファイルの情報を管理するためのテーブル)
問題を解決するには、このテーブルに保管されている古いファイルシステムパスを SQLで新しいパスに置き換える。
update files set filepath = replace(filepath, '<旧システムファイルパス>', '<新システムファイルパス>');
参考にさせていただいたページ:
http://drupal.org/node/98199
http://drupal.org/node/314022
ほか多数・・・
ファイルシステムパスは、サイトのURLに依存しない場所にしておき、必要に応じてシンボリックリンクしておくべきであった。