というのも、今まで借りていたPHP・MYSQLが使えるフリーのレンタルサーバの仕様が変わり、非常に使いにくくなってしまったからです。
で、移行作業をしていたのですが、拡張子がhtmlでソース中にPHPスクリプトを使っているファイルがあることに気付きました。
AddType application/x-httpd-php .html
通常は.htaccessにこのように書けば簡単に設定できてしまうのですが、さくらではその方法がどうやら使えないようです。
更に調べていると、その方法が書かれた文献をいくつか見つけたのですが、なぜかその通りにやっても500エラーになってしまいました。
結果、色々やってなんとか実現できたのでその方法を書きます。
・SSHでサーバと接続
・バイナリファイルをコピーしてリネーム
・パーミッション変更
・.htaccess設置
大まかな手順はこんな感じです。
以下にもう少し細かく手順を記します。
1.SSHでサーバと接続
FTPクライアントを使ってASCIIモードでやりとりをしてもできそうなのですが、私はうまくいかなかったのでSSHを使います。
SSHクライアントは私は普段PuTTYを使っているのでこれを使いました。
アカウント入力
login as: アカウント名
↓
パスワード入力
アカウント名@アカウント名.sakura.ne.jp's password: パスワード
↓
Last login: 日付 from 接続ホスト名
Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD 6.1-RELEASE-p23 (SAKURA9) #0: 日付
Welcome to FreeBSD!
%
上のように表示されれば接続完了です。
2.バイナリファイルをコピーしてリネーム
最近調べた文献ではどれもbinの下のphpをコピーすると書いてあったのですがそれをコピーして手順を完了してもどうしても500エラーになってしまいました。
で、さくらのPHPはcgi版だということを思い出し、binの下のphp-cgiを使ったらうまく動作しました。
ですのでphp-cgiをコピーしてphp.cgiにリネームします。
コピー先については、そのディレクトリ以下に対してphpを拡張子htmlでも動かすという設定になるので私はドキュメントルートに置きました。
(ドキュメントルートより下にある特定のディレクトリ以降をその設定にしたい場合はそのディレクトリ内にコピーします。)
% cp /usr/local/php-5.2.6/bin/php-cgi /home/アカウント名/www/php.cgi
3.パーミッション変更
php.cgiを置いたディレクトリとphp.cgi自身のパーミッションを705か755に変更します。
ドキュメントルートへ置く場合は既に755になっているのでphp.cgiだけ変更します。
% chmod 705 php.cgi
4..htaccess設置
このファイルはローカルで作ってFTPでアップしても大丈夫だと思うのですがせっかくなのでviで作ってしまいます。
移動
cd /home/アカウント名/www/
.htaccess新規作成
% vi .htaccess
iを押してINSERTモードにします。
以下の3行をコピーして、SSHクライアント上でCtrl+Vで貼り付けます。
DirectoryIndex index.html index.php .ht
Action myphp-script /php.cgi
AddHandler myphp-script .php .html
貼り付いたら
INSERTモード解除
Escキー押す
保存して編集終了
% :wq
これで.htaccessファイルができました。
テスト
test.htmlというファイルを作り、中に
<?php
echo "テスト";
?>
と書いてFTPでドキュメントルートにアップ。
ブラウザで確認したところ、きちんと表示されました。
追記:
この記事を書いている最中に色々ディレクトリをのぞいていたのですが、どうやらPHPのバージョンが4の場合はphpというバイナリファイルでいいみたいです。
/usr/local/php-5.2.6/bin
にはphpとphp-cgiがあるのですが、
/usr/local/php-4.4.9/bin
にはphp-cgiはありませんでした。
ですので私のようにバージョン5を使う人はphp-cgiを使ってください^^;
訪問ありがとうございます。
そちらにもまた寄らせていただきます m(_ _)m
まだできてませんが、一つ前進できましたありがとうございます!
コメントありがとうございます。
上記の方法でいけると思います。
ご検討をお祈りします^^
本当にありがとうございました!
何個もサイト回って全然できなくてほとんどあきらめてました。
ここに辿り着いて本当に良かったです。
ところで後進者のためにFFFTPを基準にこの記事の画像版を勝手ながら作ってみました。
http://fatalita.sakura.ne.jp/Column/PHPSakura/
参考になってよかったです^^
説明ページ、拝見させていただきました。
私なんかの記事よりもずっと丁寧でわかりやすいですね^^
リンクも貼っていただきありがとうございます m(_ _)m
そこでちょっと気づいたのですが貼っていただいたリンクURLの
http://webtech.seesaa.net/article/106054365.html
以降の
?reload=2008-11-08T04:29:14
↑この部分はいらないかと思います^^;
また何か有りましたらお立ち寄りください m(_ _)m
まだまだ素人で今後もお世話になると思いますがよろしくお願いします。
わざわざコメントありがとうございます。
参考になったようでよかったです^^