2009/06/21(Sun)PukiWikiの添付ファイルMIME設定

2009/06/21 16:06 NetService
PukiWiki 1.4.7において、Office2007系のファイルを添付し、ダウンロードさせると、MIME設定がapplication/octet-streamになるせいで、IE系ブラウザ(その他はよくわからないが)等において「開く」処理がうまく動かないことがある。
その解決法メモ。

現象

  • Office 2007系のファイルをダウンロードすると、保存ダイアログでZIP書庫として認識されてしまう。
  • Office PowerPoint 2007(pptx)をそのまま開こうとすると、何故かWord 2007で開こうとして失敗する

解決法

PukiWikiはindex.phpを通してダウンロードさせているので、httpdの設定にMIME設定を足しても解決しない。(cf. httpd.confに書く設定はこちら)

というわけで、Wikiのconfigページを開けてそれに追記すればよい。
次のようにアドレスを指定する。
index.php?cmd=read&page=%3Aconfig%2Fplugin%2Fattach%2Fmime-type
すると、mime-typeというページが開くので、このページを編集する。
あらかじめ凍結されているページなので、最初に管理者パスワードで凍結処理を解除する。

次に、編集エリアの最後に以下のように足す。(表の前に空行を開けないように)
application/vnd.openxmlformats-officedocument.wordprocessingml.documentdocxOffice Word 2007 document
application/vnd.ms-word.document.macroEnabled.12docmOffice Word 2007 macro-enabled document
application/vnd.openxmlformats-officedocument.wordprocessingml.templatedotxOffice Word 2007 template
application/vnd.ms-word.template.macroEnabled.12dotmOffice Word 2007 macro-enabled template
application/vnd.openxmlformats-officedocument.spreadsheetml.sheetxlsxOffice Excel 2007 workbook
application/vnd.ms-excel.sheet.macroEnabled.12xlsmOffice Excel 2007 macro-enabled workbook
application/vnd.openxmlformats-officedocument.spreadsheetml.templatexltxOffice Excel 2007 template
application/vnd.ms-excel.template.macroEnabled.12xltmOffice Excel 2007 macro-enabled workbook template
application/vnd.ms-excel.sheet.binary.macroEnabled.12xlsbOffice Excel 2007 binary workbook
application/vnd.ms-excel.addin.macroEnabled.12xlamOffice Excel 2007 add-in
application/vnd.openxmlformats-officedocument.presentationml.presentationpptxOffice PowerPoint 2007 presentation
application/vnd.openxmlformats-officedocument.presentationml.slideshowppsxOffice PowerPoint 2007 slide show
application/vnd.ms-powerpoint.slideshow.macroEnabled.12ppsmOffice PowerPoint 2007 macro-enabled slide show
application/vnd.openxmlformats-officedocument.presentationml.templatepotxOffice PowerPoint 2007 template
application/vnd.ms-powerpoint.template.macroEnabled.12potmOffice PowerPoint 2007 macro-enabled presentation template
application/vnd.ms-powerpoint.addin.macroEnabled.12ppamOffice PowerPoint 2007 add-in
application/vnd.openxmlformats-officedocument.presentationml.slidesldxOffice PowerPoint 2007 slide
application/vnd.ms-powerpoint.slide.macroEnabled.12sldmOffice PowerPoint 2007 macro-enabled slide
最後に凍結処理をかけて完了。
凍結処理のリンクが見あたらないときは、以下のページを開けばよい。
index.php?cmd=attach&page=%3Aconfig%2Fplugin%2Fattach%2Fmime-type
この設定を行えば、例えばpptxをダウンロードすると、ファイルの種類が"ZIP書庫"ではなく、"Microsoft Office PowerPoint プレゼンテーション"として認識される。