日々のアンテナ

日々アンテナを貼って、いろんな情報をキャッチ、発信したいと思います。
2017年10月 ≪  123456789101112131415161718192021222324252627282930 ≫ 2017年12月
TOPお仕事のこと ≫ さくらインターネットでphpをhtmlで動かす

さくらインターネットでphpをhtmlで動かす

ちょっと前からサブドメインを使うと500 Internal Server Errorが出て困っていたのでその調査。

さくらインターネットでphpをそのままphpとして表示するのではなく、htmlとして見せたい場合
1. /usr/local/bin/配下にあるphpを、php化したいhtmlのあるディレクトリ配下にコピーします。

2. そのphpをphp.cgiにリネームします。

3. 同じディレクトリ内に.htaccessをおきます。
内容は
「AddHandler myphp-script .html
Action myphp-script /php.cgi」
です。

参考:小粋空間:.html のままPHPを有効にする

これで、php化したhtmlが見られる・・・・はずですが、
私の場合、ずっっと動いていたのに、たまたまこれらのファイルを間違って削除して再度置いたら
500 Internal Server Errorになってしまったのです。

うーいままで動いていたのになぜ?なぜ?ってずっと悩んでいて、ありとあらゆる可能性を試して見ました。

以下、同じように500 Internal Server Errorで困ってる方は順々にチェックしてみてください。

1. ディレクトリのパーミッション、php.cgiのパーミッションが705もしくは755になっているか

2. .htaccessの綴りはあっているか

3. .htaccessの最後は改行されているか

4. .htaccessをアスキーモードでアップロードしているか


以上はよくあちこちのサイトにもチェック項目として記載されています。

で、私はこれらをやってもダメだったので、同じようにさくらインターネットでhtmlのphp化で悩んでいた方のブログを見つけ参考にしました。
参考:廃棄物雑記帳:PHPファイルの拡張子をhtmlに変えたいな

コメントにあるように、telnetで直接乗り込んでコピー、リネーム、作成を行いました。
そうしたら、見事成功。たぶん改行コードかFTPするときの何らかのミスが原因だったのだろうと思います。

telnetでの作業

phpをコピーする
# cp /usr/local/php-5.2.8/bin/php-cgi /home/自分のディレクトリ名/www/置きたいディレクトリ名/
(2009/04/09 PHPバージョン変更に伴い修正)

リネームする
# cd /home/自分のディレクトリ名/www/置きたいディレクトリ名/
# php php.cgi

パーミッションを755(または705)に変更する
# chmod 755 php.cgi

.htaccessを新規に作成して保存
# vi .htaccess
# AddHandler myphp-script .html
# Action myphp-script /php.cgi
# :wq

こんな感じ。

Comment

感謝!!
編集
コメント失礼します!

先日、ロリポップからさくらインターネットにサーバを変えて、htmlでphpを動かすのにハマリまくっておりました。

今までできていたことができなくなり、もう半泣き状態でした。

そんな時にこちらのサイトに辿りつき、内容の通り実行したところ無事に動くようになりました、本当にありがとうございましたー!
2010年02月10日(Wed) 12:09
Re: 感謝!!
編集
こんにちは!
お返事遅くなりすみません。
少しでもお役に立てたのならほんとうれしいです♪
こういうのって単純なんだけどハマると自己解決難しいですもんねー。
コメントありがとうございました。
2010年02月21日(Sun) 21:04












非公開コメントにする
Trackback

Trackback URL