プログラムに関連する技術などを紹介します。自製品の宣伝もかねていますので、お気に召したらリンク踏んでやってください。
9.04と同じ手でいけるだろうとか考えていたら、ちょい甘でした。
しかし9.10と10.04はまったく同じでした。
なので9.10と10.04は同じ記事にまとめます。
なお10/05/01現在、日本語Remixは提供されていないため、同バー
ジョンにおける検証は行っていません。
10.04 日本語remixにおける検証も行っています。
Apache、PHP5、postgreSQL、perlの環境構築を目指します。
目指すとは、当方で動作確認した方法もあわせて記載することに
より、参照された方にも動作環境を確認していただき、完成をご
確認いただくといった意味合いです。
なお事前に固定IPにしてあることを前提としています。
またroot権限で作業をしていることを前提としています。
・Apache2
・PHP5
・PostgreSQL
・phppgadmin
・Perl
(1)パッケージのインストール
注)表記してあるもののみを選択します。 関連とは依存パッケージのことで、
たとえば”php5”などを選択すると、自動的に依存パッケージが表示されます。
作業者が能動的に選択する必要はありません。
(2)Apacheの確認
(3)Perlの確認
(4)PHPの確認
(5)postgresqlの設定
(6)postgresのユーザ追加
(7)phppgadminの確認
(8)phppgadminの設定変更
(9)/var/wwwでPerlを実施するための設定
しかし9.10と10.04はまったく同じでした。
なので9.10と10.04は同じ記事にまとめます。
ジョンにおける検証は行っていません。
10.04 日本語remixにおける検証も行っています。
Apache、PHP5、postgreSQL、perlの環境構築を目指します。
目指すとは、当方で動作確認した方法もあわせて記載することに
より、参照された方にも動作環境を確認していただき、完成をご
確認いただくといった意味合いです。
なお事前に固定IPにしてあることを前提としています。
またroot権限で作業をしていることを前提としています。
・Apache2
・PHP5
・PostgreSQL
・phppgadmin
・Perl
(1)パッケージのインストール
synapticパッケージマネージャを起動し、 以下のものをインストールします。 ・"apache2"および関連 ・"php5"および関連 ・"postgresql"および関連 ・"php5-pgsql" ・"phppgadmin" |
たとえば”php5”などを選択すると、自動的に依存パッケージが表示されます。
作業者が能動的に選択する必要はありません。
(2)Apacheの確認
ブラウザを起動し、アドレスにIPアドレスを 入力してください。 左のような画面が表示されればOKです。 |
(3)Perlの確認
(4)PHPの確認
PHPスクリプトは、デフォルトで/var/www/に配置できるようになって います。以下の内容でtest.phpを作成してください。
作成したら、chmodで実行権限 をつけます。
|
||||
ブラウザを起動し、アドレスを入力して ください。IPアドレスが192.168.1.103の 場合は、 http://192.168.1.103/test.php になります。 左のような画面が表示されればOKです。 |
(5)postgresqlの設定
ここは他よりしんどい作業になります。注意して作業を行ってください。 postgresはデフォルトのデータベースが日本語に対応していません。 なのでデータベースそのものをどうにかしなければなりません。 今回はデータベースを再生成します。 なおここでご紹介する手法では、古いデータベースの内容を破棄します。 なので、postgresの導入直後に作業することをお勧めします。 以下、Ubuntu端末画面のコマンド入力です。なおコマンドが長くなっているため、 一部改行してしまっています。注意してください。 薄い青字は注釈です。オレンジはメッセージです。実際はこの色で表示されません。 バージョン(下記では8.4)が変わっている可能性がありますので注意してください。 |
||
root@ubuntu:/home/yellow# /etc/init.d/postgresql-8.4 stop * Stopping PostgreSQL 8.4 database server [ OK ] → postgresを停止 root@ubuntu:/home/yellow# cd /var/lib/postgresql/8.4/ → DB本体のファイルがあるディレクトリに移動に root@ubuntu:/var/lib/postgresql/8.4# mv main main.backup → 旧DBを念のためバックアップ(移動) root@ubuntu:/var/lib/postgresql/8.4# mkdir main → 新しいDB用のディレクトリを生成 root@ubuntu:/var/lib/postgresql/8.4# chown postgres:postgres main → ディレクトリオーナの変更 root@ubuntu:/var/lib/postgresql/8.4# su - postgres → 権限をpostgresに変更 postgres@ubuntu:~$ /usr/lib/postgresql/8.4/bin/initdb -D /var/lib/postgresql/8.4/main -E EUC-JP --no-locale データベースシステム内のファイルの所有者は"postgres"ユーザでした。 このユーザがサーバプロセスを所有しなければなりません。 データベースクラスタはロケールCで初期化されます。 デフォルトのテキスト検索設定はenglishに設定されました。 ディレクトリ/var/lib/postgresql/8.4/mainの権限を設定しています ... ok サブディレクトリを作成しています ... ok デフォルトのmax_connectionsを選択しています ... 100 デフォルトの shared_buffers を選択しています ... 28MB 設定ファイルを作成しています ... ok /var/lib/postgresql/8.4/main/base/1にtemplate1データベースを作成しています ... ok pg_authidを初期化しています ... ok 依存関係を初期化しています ... ok システムビューを作成しています ... ok システムオブジェクトの定義をロードしています ... ok 変換を作成しています ... ok ディレクトリを作成しています ... ok 組み込みオブジェクトに権限を設定しています ... ok 情報スキーマを作成しています ... ok template1データベースをバキュームしています ... ok template1からtemplate0へコピーしています ... ok template1からpostgresへコピーしています ... ok 警告: ローカル接続向けに"trust"認証が有効です。 pg_hba.confを編集する、もしくは、次回initdbを実行する時に-Aオプショ ンを使用することで変更することができます。 成功しました。以下を使用してデータベースサーバを起動することができます。 /usr/lib/postgresql/8.4/bin/postgres -D /var/lib/postgresql/8.4/main または /usr/lib/postgresql/8.4/bin/pg_ctl -D /var/lib/postgresql/8.4/main -l logfile start → データベースファイルを生成(※1) postgres@ubuntu:~$ exit logout → postgres権限終了 root@ubuntu:/var/lib/postgresql/8.4# ln -s /etc/ssl/certs/ssl-cert-snakeoil.pem main/server.crt (※3) root@ubuntu:/var/lib/postgresql/8.4# ln -s /etc/ssl/private/ssl-cert-snakeoil.key main/server.key(※3) → DBに必要なシンボリックリンクを作成(2つ) root@ubuntu:/var/lib/postgresql/8.4# /etc/init.d/postgresql-8.4 start * Starting PostgreSQL 8.4 database server [ OK ] → postgresを起動(※2) root@ubuntu:/var/lib/postgresql/8.4# |
※1: | デフォルトだと「--no-locale」オプションがないため、2バイト文字が扱えません。 なおUbuntu9.10からPostgres8.4になり、エンコード指定方法が変わりました。 本書ではデフォルトをEUC-JPにしているので、その他のコードでDBを生成する 場合はいままでと手順が変わります。こちらをご参照ください。 |
|
※2: | ここで起動失敗(OKではなくfail)が出るようであれば、手順が誤っています。 作成したmainディレクトリを削除し、作業をやりなおしてください。 どうしてもダメだった場合、main.backupをmainに書き戻してください。その際 日本語はDBデータとして使えません。 |
|
※3: | この手順はUbuntu9.10または10.04 / Postgresql8.4の手順です。 |
(6)postgresのユーザ追加
postgresユーザ(DBアクセス専用)を追加します。 このユーザはPostgresDBに登録され、Linuxユーザには登録されません。 今回はサーバで複数のユーザを扱うことを想定していません。 PHP経由でスーパユーザアクセスのみ想定しています。 以下、Ubuntu端末画面のコマンド入力です。なお薄い青字は注釈です |
|
root@ubuntu:/var/lib/postgresql/8.4# su postgres → 権限をpostgresに変更 postgres@ubuntu:~/8.4$ createuser -P xxxxxx → xxxxxxというユーザを作成(適宜変更してください) 新しいロールのパスワード: もう一度入力してください: → パスワードの入力&再入力 新しいロールをスーパーユーザとしますか? (y/n) y → スーパーユーザー権限の付与 postgres@ubuntu:/home/yellow$ exit →postgres権限の終了 |
(7)phppgadminの確認
デフォルト状態では、Ubuntuのローカルアクセスにしか対応していません。 とりあえずローカルから確認します。 |
||
ブラウザを起動し、アドレスを入力してください。 アドレスは、 http://127.0.0.1/phppgadmin/ です。 左のような画面が表示されればOKです。 |
||
左袖の「PostgreSQL」をクリックすると、 ユーザ名とパスワードの入力を求められます。 (6)で登録したものを入力します。 |
||
認証に成功すると、左のような画面が出ます。 ここでDB作成や編集など、一通りの作業が出来ます。 |
(8)phppgadminの設定変更
(7)でも書きましたが、phppgadminはデフォルト状態でローカルアクセス (http://127.0.0.1/かhttp://localhost/)にしか対応していません。 必要に応じ変更することができます。必須ではありません。 まず、/etc/phppgadmin/apache.confを修正します。
http://192.168.1.*/からアクセスできるように変更しました。 変更を適用するには、apacheを再起動してください。
|
(9)/var/wwwでPerlを実施するための設定
/etc/apache2/sites-available/default を編集します。 以下のエントリ(/var/www)のオレンジの部分を追加します。 |
|||
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews +ExecCGI AddHandler cgi-script .cgi .pl AllowOverride None Order allow,deny allow from all </Directory> |
|||
変更を適用するには、apacheを再起動してください。
|
PR
Comment form
このリンク踏んで!
カウンタ
ブログ内検索
忍者アド
カレンダー
最新記事
(12/11)
(09/04)
(05/27)
(05/09)
(05/09)
カテゴリー
最新トラックバック
最新コメント
プロフィール
HN:
鍛冶屋の紅
性別:
男性
アクセス解析