人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

さくらVPSでCenOS5.5のサーバにPHP5をモジュールでインストールし、PHP4をCGIとして起動できるように共存化しています。php4で動かす場合、PHPファイルの拡張子を.php4にすると動作します。

ここまでは問題ないのですが、特定のディレクトリでphpの拡張子をphp4として動かしたいと思い、
.htaccessに「AddHandler php4-script .php」
と書いたのですが、切り替わらずにエラー(画面が真っ白)になりました。
(※htaccessは動作しますし、設置ディレクトリのAllowOverrideはAllになっています)

他、「AddType application/x-httpd-php4 .php」とも書いてみたのですが、
.phpファイルにアクセスすると、PHP5として認識されます。

過去のはてな質問である
http://q.hatena.ne.jp/1206609353
を見ましたが、それでも解決しません。

拡張子phpでphp4のファイルとして動かす方法があれば教えてください。


●質問者: kt26
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:.htaccess AddHandler ALL application CGI
○ 状態 :キャンセル
└ 回答数 : 2/2件

▽最新の回答へ

1 ● tasklight

まず、httpd.conf または .htaccess に下記の設定があることを確認してください。

Action php4-script {CGI版PHP4があるディレクトリ}
AddHandler php4-script .php4
◎質問者からの返答

インストールしたサーバを見ると、PHP4もモジュール版でインストールしていました。

それで、/etc/httpd/conf.dにphp4.confを作成し、以下の通り指定しています。

LoadModule php4_module modules/libphp4.so

AddType application/x-httpd-php4 .php4


AddTypeを.htaccessで「AddType application/x-httpd-php4 .php」と指定すれば

目的通りになるかと思ったのですが、やはり無理でした。


自分ではCGI版をインストールしたと思い込んでいたので、モジュール版をインストールしたら動かないのかも知れませんが、もしモジュール版でも切り替え可能な場合は回答お願いします。


2 ● tasklight

インストールしたサーバを見ると、PHP4もモジュール版でインストールしていました。

それでは、ご質問のような動作をさせることは不可能です。

PHP4/PHP5の切り替えがうまく行っていること自体、偶然だと思います。


PHP4はモジュール版をインストールし直してください。

◎質問者からの返答

回答の意味が良くわからないのですが・・。

PHP4のモジュール版をインストールして動作できているのは偶然で、

PHP4のモジュール版をインストールし直すんですか?

じゃ、また”偶然”になるのでは?インストールし直す意図が分かりません。


PHP4/PHP5どちらもモジュール版なら切り替えできないという明確なソースや情報があるのなら理解できますし、CGI版じゃないと無理というなら質問した意味もあります。しかし、そのような回答をいただいても理解できません。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ