WebScripter.jp

HTML、CSS、Javascript、ActionScript、php、デザインなどWeb制作に関する備忘録

CoreserverでWordpressのテーマ編集が出来ない。

Coreserverは、XREAの上位サービスですが、XREAと同じくphpはセーフモードで動作するので、Wordpressでそのうち問題は出るのだろうなと思いつつ放置してましたが、今制作中の別のブログでテーマ編集ができないという問題が起きました。
制作中はローカルでDreamweaverで編集してはサーバーにアップしていたので気がつきませんでしたが、外出先で管理画面から編集しようとしたら、「ファイル更新」のボタンが無く、

変更を保存するには事前にこのファイルを書き込み可能にする
必要があります。詳しい情報は Codex を参照してください。

と記載されていました。これでは編集ができません。
しかし、以前CoreserverでphpをCGIモードで動作させなければならない状況を経験していたので、ろくにCodexを見ずに、全部CGIモードにしてしまえばいいだろと思い

XML:
  1. AddHandler application/x-httpd-phpcgi .php

と.htaccessに記述してアップしました。…が、管理画面のレイアウトが崩れてしまいました。
元に戻して調べてみましたが、制作中のWordpressのバージョンは2.8で、上の様な記述にしてしまうと管理画面のレイアウトが崩れてしまうようです。

WordPress_break

»WordPress 2.8 の管理画面がおかしくなる場合の対処法
»WordPress フォーラム ー 2.8の管理画面のCSSが反映しない

どうやら、2.8では必要なphpファイルだけをCGIモードで動作するよう指定してした方が良いようです。

そこで、その他の調べたページも参考にしながら.htaccessに記述してみました。もちろん、改めてCodexの方も参考に。(最初から見ていればね〜)
今回気がついたのはテーマ編集だけでしたが、他にもファイルのアップロード、プラグインの新規インストール、テーマ自動アップグレード、コアアップグレード(自動バージョンアップ)も制限に引っかかります。

XML:
  1. # ファイルのアップロード
  2. <Files async-upload.php>
  3. AddHandler application/x-httpd-phpcgi .php
  4. </Files>
  5.  
  6. # プラグインの新規インストール
  7. <Files plugin-install.php>
  8. AddHandler application/x-httpd-phpcgi .php
  9. </Files>
  10.  
  11. # テーマの自動アップグレード
  12. <Files update.php>
  13. AddHandler application/x-httpd-phpcgi .php
  14. </Files>
  15.  
  16. # コアアップグレード
  17. <Files update-core.php>
  18. AddHandler application/x-httpd-phpcgi .php
  19. </Files>
  20.  
  21. # テーマ編集
  22. <Files theme-editor.php>
  23. AddHandler application/x-httpd-phpcgi .php
  24. </Files>

とりあえず、ファイルのアップロード、コアアップグレード、テーマ編集は問題なく動きました。他はまだ試していませんがおそらく大丈夫でしょう?
動作しないものがあれば、そのファイルを特定して、

XML:
  1. <Files ファイル名.php>
  2. AddHandler application/x-httpd-phpcgi .php
  3. </Files>

と随時追加していけばいいようです。

参考サイト:
»セーフモードによる制限と対処方法 - WordPress Codex 日本語版
»[WordPress]xrea系サーバーで自動アップデートする方法 - 猫でいいです(猫雑記)
»XREA で WordPress アップロード機能を使う - WordPress備忘ログ

コメント/トラックバック

トラックバックURL

この投稿へのコメント/トラックバックはありません。

コメントする