それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

指定のファイルだけPHP4にしたりPHP5系にしたり共存する。(ヘテムル向き

ヘテムルのサーバーを初めて触りました。ヘテムルのサーバはphp4/5が柔軟に選択できて良い感じですね。でもPHP4で動いているソフトウェアにPHP5を組み込むのはやりたくないのです。言われたのよね。

phpの各種バージョンを共存させる

PHP4系のアプリが未だに現役のサーバーで新機能を作るには、、、

色々考えたけれど、PHPのバージョンを共存させるのが一番ベターでした。じゃあそれはどうやるか

特定ファイルだけをPHP5.4で動かす。

.htaccessで以下のように設定します。
<Files "my_work_for_new_app.php">
        AddHandler php5-script .php
</Files>

ApacheAddHandlerをファイルにだけ適用すればいいわけです。

ApacheはOSだと思えばいいんです。

OSは指定ファイルにだけ別アプリケーションで開けますよね?アレと同じ事です。
ApacheでそれをやるにはFilesディレクティブでできます。

この他にも

  • Directoryで指定する
  • FileMatch で指定する
  • fcgiで指定する(XREAなどはこれ

などが使えます。

特定のディレクトリをPHP5にする

<Directory "my_work">
        AddHandler php5-script .php
</Directory>

ですかね。

cgiの場合は

<Directory "my_work">
        AddHandler cgi-script .php
</Directory>

として、拡張子PHPはCGIで動かす指定にした上で

#!/usr/local/bin/php5.4
<?php
phpinfo();

とかやれば大丈夫だと思います。CGIの設定やcgi-binの細かい設定は割愛。

php4は捨てましょう

まだPHP4系の求人が有るようですが。ブラックコーヒーの香りが漂ってきます。

PHP4では、PDOが使えない、json系が使えない、SimpleXMLが使えないので、今時のプログラミングをするのに相当な時間がかかりませんかね。。。

サーバー全体が書き換わるからダメ?

PHP4と5を共存させたり、5.3と5.5を共存させたりしたいですよね。

「サーバー設定を書き換えのるでアプリの共存はできません。」

そういうことを言ってるるサーバー管理者は直ぐに首にしていいと思いますよ(煽る


アデコから、「PHP4のお仕事です」とメールが来てたからカッとなって昔書いてた下書きを公開した