ファイルのアップロードで上書きを有効にする
Tag:[]
Movable Type ではFTPツールを利用せずに、管理メニューの「ファイルのアップロード」からファイルをアップロードすることができです。ただしデフォルト状態で /tmp が存在しない環境ではファイルの上書きができない(アップロード画面でエラーとなります)ため、やや不便に感じます。
上書き可能にするためには /tmp ディレクトリを作成するか、あるいは mt.cfg の TempDir を有効にし、アップロードしたファイルを一時保存するためのディレクトリを設定します。後者の場合の設定方法は下記の通りです。
変更前
# When processing uploaded files, if Movable Type notices that the file you
# uploaded already exists, it will allow you to overwrite the original file,
# by first asking for your confirmation. To do this, MT needs to write the
# uploaded data to a temporary file. That temporary file is stored in the
# directory specified by the TempDir setting; the value defaults to /tmp.
#
# TempDir /tmp/
#
変更後
# When processing uploaded files, if Movable Type notices that the file you
# uploaded already exists, it will allow you to overwrite the original file,
# by first asking for your confirmation. To do this, MT needs to write the
# uploaded data to a temporary file. That temporary file is stored in the
# directory specified by the TempDir setting; the value defaults to /tmp.
#
TempDir /~/tmp/
#
"~"の部分にはファイルを一時保存するtmp ディレクトリまでの絶対パスを記述します(試していませんが相対パスも有効かもしれません)。また配置するための tmp ディレクトリも予め作成しておきます。例えばローカル・サイト・パス配下に tmp というディレクトリを作成し、そこを参照するようにするのが良いのではないでしょうか。
なお上書きされる場合は「上書きしますか」という確認画面が表示されるので、そこで「いいえ」を選択すれば誤って上書きされることはありません。
2005.02.19 追記
Linux や UNIX のレンタルサーバの場合、システムデフォルトで /tmp が存在するので、本設定は不要と思われます。
- Movable TypeにGoogle Analyticsの情報を設定する方法
- Movable Typeのブログ選択メニューをカスタマイズする
- Movable Type 5.1のリスティングフレームワークで独自管理画面を作る(その1)
- Movable Typeのインポート・エクスポートでカスタムフィールドを扱う
- ブログ記事の本文編集エリアを拡張する
- テンプレート一覧のアクションに「テンプレートの再構築」を追加する
- Movable Type の管理画面用テンプレートファイル名を管理画面に表示する
- Movable Type で簡単に valid な XHTML 文書を作る
- アップロードしたファイルをブログ記事に挿入する
- カスタムフィールドのラジオボタンを横並びにする
- Movable Type でメールマガジンを作る(メールアドレスの解除)
- Movable Type 4 のブログ記事投稿画面のカテゴリー選択エリアを拡張する
- カスタムフィールドによるアップロード画像をサムネイルで表示するプラグイン 0.02
- CORESERVER / XREA にcron ジョブ(Movable Type 4 の run-periodic-tasks)を設定する
- Movable Type のスケジュール・タスク実行(Windows 編)
こんにちは。
これ、凄く必要な機能ですよね。
今でも、間違ってアップロードしてしまった場合、ファイル名を変えて送り直すかいちいちリモートで接続してHDDのファイル消してました・・・。(自サーバなので)
早速試してみます!
うちは デフォルトのまま mt.cfg をいじってない (# TempDir /tmp/ となったまま) のに、
同じファイル名のファイルをアップしようとすると、エラーにならず 「上書きしますか?」って出るんですけど、どうしてでしょう?
私のところも特に問題なくファイルの上書はできます。確か最初のバージョンではエラーが出てしまいファイル名を変更してアップしました。サーバーの環境もあるのか?その後サーバーを移行して、尚且つ今の最新のものでは、問題ないようです。
>daiさん
こんばんは。
ご利用ありがとうございます。
私もかなりファイル名変えて送信していました(笑)。
>さえらさん
こんばんは。
ご質問ありがとうごさいます。
ということで記事修正致しました。
>C.バードさん
こんばんは。
多分サーバの環境が変わって/tmpができたみたいですね。
ということで本記事につきましては対象外でお願い致します。