ファーストサーバーのPHPバージョンが変更

ファーストサーバーにてPHP5の導入がコメントされました。

平素よりファーストサーバをご利用いただき、誠にありがとうございます。

弊社にて提供しております PHP について、 2008年1月8日より PHP5への対応を開始いたしました。

また、従来提供の PHP4 は今後提供を終了する予定でございますので、現在PHP4にてご利用中のお客様は、ご利用のPHPプログラムの見直しをお願いいたします。

ただし、PHP5の提供はCGI版になりプログラムの変更は免れない模様。
以下に変更内容を示す。

PHP4とPHP5とでは、弊社でのご提供において以下の相違点がございます。
ご確認いただき、プログラムの見直しを行ってください。

  PHP4(従来) PHP5
提供形態 DSO版 CGI 版
プログラムへのパス記述 不要 必要
ファイルのパーミッション 644 755※アップロード後に変更が必要
プログラムの拡張子 .php .php5

つまり、wordpressに関していえば

  1. 拡張子の変更 .php → .php5
  2. パーミッションの変更 644など → 755
  3. phpパスの追加

の作業が、最低でも必要になる。

ここで、拡張子の変更に関してはFAQに答えがあった。

拡張子「.php」でPHP5プログラムを動作させたい。
「.htaccess」ファイルの設置によりお客様にて設定の変更が可能です。手順は下記をご参照ください。
====================================
■.htaccess の設置方法(.php でPHP5プログラムを利用する場合)
====================================
 1) テキストエディタに下記の内容を記述します。

—–ここから—–ここから—–ここから—–
AddHandler cgi-script .php

—–ここまで—–ここまで—–ここまで—–

 ※記述の最後には必ず「Enter」キーなどで改行を挿入してください。
 2) 1)のファイルを .htaccess という名前で保存し、サーバにアップロードします。
※「.htaccess」は、認識させたいファイルと同階層にアップロードしてください。
※「.htaccess」は、wwwディレクトリ以下全てに同じ設定をされる場合は
wwwディレクトリ直下に、特定のディレクトリのみに設定
される場合は特定のディレクトリにだけアップロードしてください。
※.htaccessはサーバの挙動を制御するものですので、取り扱いには
十分にご注意ください。

.htaccessに記述したうえでアクセスできることは確認した。(もちろんPHPは動かない。)

次にパーミッションの変更に関しては「FFFTP」などであれば拡張子ごとに転送時の動作を設定できるためあらかじめ転送設定に.PHPは755で転送するように設定しておけばよい。

最後のPHPパスの追加であるが、すべてのPHPファイルの先頭に「#!/usr/bin/php」の記述が必要になる。記述なしでは動かなかった。
いろいろ調べてみたが他に方法はなさそうなので、すべてのPHPファイルに追加することにする。他の方法に関する情報があったら是非教えてほしい・・・

WordPressデータベースSQLのバックアップ

WordPressはSQLデータベースに記事が保存されていることはご存じだと思う。
通常のホームページであれば、ローカルで作成したhtmlファイルをアップロードするわけであるので、ローカルにもサーバにもファイルが存在する。ローカルのファイルをバックアップしておけばよほどのことがない限りファイルの消失は避けられる。

しかし、Wordpressを含めブログのシステムはブラウザ上から記事を投稿し、保存先もサーバ上のSQLデータベースに保存されている。したがってローカルに記事のコピーは存在しない。
当然のことではあるが、バックアップを取る際にはこのSQLデータベース上の記事データを保存しなくてはならないが、通常考えられるやり方はphpMyAdminでバックアップを取る方法などであるが、例えばファーストサーバの場合コンフィグレータにID・パスを入力してアクセスし、さらにphpMyAdminにID・パスを入力してアクセスするなど手間が多い。

そこで登場するのがWordpressプラグインのWP-DBManagerである。
これは、Wordpress上からSQLデータベースのバックアップを取ってしまおうという、とても便利なプラグインであり、復元もできるすぐれものである。
今回はWP-DBManager2.11(日本語版)MMRT daily lifeさんのページからダウンロードさせていただいた。

MMRT daily lifeさんのページにも解説が書かれているが、例の通りファーストサーバでの運用には若干読み替えが必要であるため記憶のかけらを残しておく。

mysqldumpのパス: /usr/local/mysql/bin/mysqldump
mysqlのパス: /usr/local/mysql/bin/mysql

と書かれているが、ファーストサーバでは赤文字が消えない。パスが違うことは容易に想像できるが、ファーストサーバのヘルプを調べてもそうそうパスの記述まで出てこない。

コンフィグレータにアクセスしphpMyAdminを起動し調査したところ、mysqlのパスは「/usr/local/mysql」であることが判明した、赤文字も消えた。
しかし、mysqldumpのパスだけはどうしても探せなかった。一応「/usr/local/mysql」を入力することで赤文字は消えたが、DBバックアップの際には「MYSQLダンプロケーション」を「はい」にしないとバックアップに失敗する。
一応この設定でバックアップファイルが作成されたことまでは確認済みであるが、検証を行っていないため、使用に関しては自己責任でお願いする。

IE7でImageManagerの小さな不具合?

現在、Wordpressでいくつかのプラグインを入れているが、その中でもImageManagerにちょっとした不具合があった。
不具合と言ってもIE7だけだと思われるが、検証をしていないので今のところはっきりとは言い切れない。

TinyMCEプラグインでImageManagerが使用できるようにボタンを配置しているが、そのボタンを押したときのWindowOPENでIE7の場合だけ縦の大きさが足りない。一番下に更新のボタンがあるためIE7のときはWindowサイズを広げないとボタンが押せないのだ。
Win2000+IE6の場合だけ確認ができているが、ボタンはきちんと表示される。ソースをいじってサイズをあらかじめ大きくしておくと、IE6の場合は下に不自然な余白ができてしまう。

まあ、大は小を兼ねるということで、よしとする(謎)

WindowOPENのサイズ変更はwp-content/plugins/ImageManager/にあるmanager.phpの27行目あたりにあるwindow.resizeTo(600, 500);の部分を変更する。私の場合は570にしてきちんと表示できることを確認した。

まあ、大したことではない+ほかのブラウザでの検証もできていないということで、タイトルにも?をつけておく。
だれか検証結果および原因をご存じだったら教えてほしい。

TinyMCEの日本語化

以前にも行ったのですが、wordpressを別サーバにインストールしたついでにTinyMCEの日本語化を行ったので覚書です。
えっと、私のwordpressの構成ではプラグインでWP-TinyMCEとImageManagerを導入しています。ImageManagerは日本語化済みなので、TinyMCEの日本語化のみです。
とは言うものの、TinyMCEの公式サイトlanguageファイルが配布されてます。他のページでもよく見るのですが「wordpressで日本語化ができない」というのは簡単に解決しました。

まず、TinyMCEの公式サイトでlanguageファイルをダウンロードしてきます。解凍したファイルの中の「langs」「plugins」「themes」フォルダを上書きします。このフォルダの中にはja.jsファイルが入っているだけ(複数)なので置き換えてはいけません、既存の同名フォルダに「上書き」してください。
これで8割方日本語化されます。WP-TinyMCEプラグインを入れていると追加のボタンが日本語化されているのが確認できると思います。入れていない方は日本語化されていないように見えるかも。(アップロードしたのに日本語化していなかったらCtrl+F5で更新しましょう。)

次に/wp-includes/tinymce/plugins/wordpress/langs/フォルダにあるen.jsを参考にja.jsを作成します。私が作った中途半端なものでよければこちらをどうぞ^^;
en.jsはshift-jisで作成されています。ja.jsを保存する際はエンコードに気を付けてください。私はwordpressがUTF-8なのでja.jsもUFT-8で保存しました。

これで9割方日本語化が完了します。一部日本語化されていませんが・・・ほとんど使う予定がないのでとりあえずこのままです^^;;

設置ディレクトリと違うディレクトリでの運用

さて、ファーストサーバー用のインストール記事も完成したことなので、違うことに挑戦です。
wordpressを設置ディレクトリとは違うディレクトリで運用する方法です。

参考にしたページはpower source*さん。ファーストサーバーでは少々エラーがでたので追記します。

「設置ディレクトリとは違うディレクトリ」というのは、例えば「http://www.example.com/wordpress/」というディレクトリにインストールした場合でも「http://www.example.com/」や「http://www.example.com/blog/」でページを見れるようにするということ。ルートディレクトリにはいろいろファイルを置きたくないとか、今回の私の場合はblogディレクトリはすでに存在しているけどwordpressを仮に設置して後ほどblogディレクトリで運用したいと思い、wordpressディレクトリにインストールしつつ、blog2ディレクトリで見れるように加工し、正規運用の際にはblogディレクトリで稼働させようと画策したものです。blogディレクトリの中身を壊さずかつ運用したままwordpressをテスト稼働させ、再インストールなどをしなくても設定のみでblogディレクトリで運用可能です。

詳細はpower source*さんのページを見ていただくとして、ファーストサーバー用に変更したこと。
肝は.htaccessのアドレス表記方法。
index.phpの4行目を以下のように修正します。

require('/virtual/www/wordpress/wp-blog-header.php');

power source*さんのページでは

require('./wordpress/wp-blog-header.php');

となっていますが、エラーが出たので上記のように修正しました。ファーストサーバーのディレクトリ構成の問題だと思います。