■Apache+PHP(DBへの接続)
■注意点
○HPを見る
Apacheをインストールする事によってブラウザでサーバのIPアドレスを
指定する事によってホームページを見る事が出来ます。
インストールして何も変更しないでホームページを見るとApacheの
テストページが表示されます。
このページが表示されればApacheのインストールと接続の為の設定に
問題は無かったという事になります。
○ドキュメントルートと安全性
Apacheの設定で標準では /var/www/html/
ここになります。
ここにHTMLファイルをindex.html 又は index.php
と名前を
つけて保存する事によってブラウザで見た時テストページではなく
そのファイルが表示されるようになります。
ドキュメントルートが /var/www/html/ でディレクトリを
作ったとします。
/var/www/html/test/
こうするとブラウザーから http://[IPアドレス]/testと打ち込んで
移動するとそのフォルダの中身が見れてしまいます。
またファイル等を置いてもファイル名を直接ブラウザに打ち込む事で
中身を見たりする事も出来ます。
ドキュメントルート以下のフォルダは常にユーザーが見る事が
出来る為、安全な場所は無いと思ったほうが良いでしょう。
その為重要なファイルを保存する場合はドキュメントルートの上
今回 /var/www/html/ の場合 /var/www/ に重要なファイルを置いて
使うと良いです。
○実行ユーザー
CentOSでPHPを実行するのはユーザーapacheです。
※インストール時に作成されます
フォルダに一般ユーザーへの読み込み・実行権は付与されているので
問題ありませんがファイル等に書き込みたい場合は注意が必要です。
○作成
PHPはテキストエディッタで作成しますが保存する時は文字コードをUTF-8
拡張子は.phpで作成します。
○構成
DBとの接続にはユーザー名・パスワードが必要になります。
ユーザーには見せたくないのでその部分は分けてドキュメントルートの上に
置くようにします。こうする事によってユーザーからは見えなくなります。
・接続情報 dbconnect.php
・メインプログラム connect_samp.php
保存場所
/var/www/dbconnect.php
/var/www/html/connect_samp.php
○ソース
・接続情報 dbconnect.php
<?php
ini_set( 'display_errors', 1 );
header('Content-Type: text/html; charset=UTF-8');
//DBへの接続文字
function db_connect(){
return 'host=localhost port=[ポート] dbname=[DB名] user=[ユーザー名] password=[パスワード]';
}
?>
※ディスプレイにエラーを表示、ヘッダーとDB接続文字列の取得ルーチンのみです。他のプログラムから呼び出して使います。
・メインプログラム connect_samp.php
<?php
include("../dbconnect.php"); //共通外部ファイル
//DBへの接続
$db_con = pg_connect(db_connect());
if($db_con){
echo "接続OK";
//データベースを閉じる
pg_close($db_con);
}else{
echo "接続NG";
}
?>
※最初に接続用のphpをincludeしています。名前の前に../を入れる事によって上のフォルダを参照しています。
・サーバへのコピー
Winodws用ソフトのWinSCPを利用し、サーバにdbconnect.php、
connect_samp.php両ファイルをコピーします。
初期設定でwebadminのホームディレクトリを変えているので
/var/www/html/ になっていればそのままコピーします。
dbconnect.phpは上のフォルダに移動しますがwebadminには
/var/www/のアクセス権が無いのでrootで移動させます。
# mv /var/www/html/dbconnect.php /var/www/
・確認
ブラウザで http://[IPアドレス]/connect_samp.php にアクセスします。
接続OKと表示されれば成功です。
トップへ戻る