#navi(../)
* CentOSでLAPP環境を構築する [#a32e2058]
この資料はCentOS5とCentOS6を使ってLAPP環境を構築します。~
#contents
#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)

* 関連資料 [#f5bd4964]
以下の設定をしたのに、他のPCからブラウザを起動しIPを指定してもデフォルトのウェブページが見れない場合は以下の資料を参考にしてください。~
GUIを利用したファイアウォールの設定資料になります。~
本記事では、CUI(tui)を利用したiptablesの設定方法も記述してあります。
-[[CentOS/httpdを動かしたのに外部PCから見れない場合の設定]]

* LAPPに必要なソフトェアのインストール [#t6583789]
** LAPPとは [#r7ddb9a4]
LAPPとは以下のソフトウェアの頭文字を取ったものです。
|ソフトウェア名|ソフトウェアの説明|
|''L''inux|OS|
|''A''pache|HTTPサーバ|
|''P''ostgreSQL|データベース|
|''P''HP|スクリプト言語|

* yumコマンドでLAPP必要なパッケージをインストール [#x4d1b2fd]
以下のコマンドで''A''pache, ''P''ostgreSQL, ''P''HPのパッケージをインストールします。

** CentOSにLAPP環境をインストール(CentOS 5, CentOS 6共通) [#g2a2e930]
以下、実際にインストールしたときの出力です。

** LAPP環境に必要なパッケージをインストール(CentOS 5, CentOS 6共通) [#b0f1b5ec]
以下のコマンドでLAPP環境に必要なパッケージをインストールしました。~
作業はrootユーザで行ってください。
 yum install httpd php postgresql postgresql-server php-pgsql php-mbstring php-gd
(mbstring, gdも一緒にインストールしています。)

* PostgreSQLの初期化(CentOS 5, CentOS 6共通) [#t9d02b70]
chkconfig postgresql onコマンドを実行したあと、再起動してもPostgreSQLが起動しない場合や、service postgresql startコマンドを実行したとき、以下のメッセージが表示された場合は、メッセージ通り ''service postgresql initdb'' を実行してください。
 [root@centos ~]# service postgresql start
 
 /var/lib/pgsql/data is missing. Use "service postgresql initdb" to initialize the cluster first.

- service postgresql initdb 実行時の出力
 /var/lib/pgsql/data is missing. Use "service postgresql initdb" to initialize the cluster first.
 [root@centos ~]# service postgresql initdb
 データベースを初期化中:                                    [  OK  ]



* LAPP環境の自動起動設定(CentOS 5, CentOS 6共通) [#ke4ca0f6]
PC起動でPostgreSQL, apache(httpd)が起動するようにするため、以下のコマンドを実行しました。
- PostgreSQL(postgresql)の自動起動設定
 chkconfig postgresql on
- apache(httpd)の自動起動設定
 chkconfig httpd on

* LAPP環境の自動起動設定をしないで起動する方法(CentOS 5, CentOS 6共通) [#gb4c10ff]
上記の自動起動設定を行わない場合は、serviceコマンドでPostgreSQL, apache(httpd)を起動します。
- apache(httpd)の起動
 service httpd start
- PostgreSQLの起動
 service postgresql start


* PHPの動作確認(CentOS 5, CentOS 6共通) [#o97e65da]
/var/www/htmlに以下のPHPスクリプトを配置します。~
ファイル名はinfo.phpにしました。
 <?php phpinfo(); ?>

当方、以下のコマンドでinfo.phpを作成しました。
 echo '<?php phpinfo(); ?>' > /var/www/html/info.php

ブラウザで確認したスクリーンショットです。(CentOS 5)
#ref(LAPP-01.gif)

* ファイアーウォールの設定 [#w76a89e1]
LAPP環境の構築ができましたが、iptables(ファイアーウォール)が有効の場合、外部のPCから接続できません。~
これは、httpの80番ポートが開いていないためです。~
以下の操作により80ポートを開けます。~
尚、iptablesを起動していない場合は、以下の操作は不要です。

** CentOS 5編 [#v3d64633]
CUI(TUI)を利用した設定方法を記述します。~
+端末を起動しrootユーザになり、以下のコマンドを実行します。
 system-config-securitylevel-tui
+ 以下の画面が表示されるので、TABキーを押しカスタマイズにフォーカスを移動し、Enterキーを押します。
#ref(LAPP-02.gif)
#br
+TABキーでWWW (HTTP)にフォーカスを移動し、スペースキーを押します。(*が表示されます。)
+TABキーでOKにフォーカスを移動し、Enterキーを押します。
+最初の画面が表示されるので、OKにフォーカスを移動し、Enterキーを押せば設定完了です。~

以上で外部PCから接続できるようになります。

** CentOS 6編 [#tcb9de21]
CUI(TUI)を利用した設定方法を記述します。~
+端末を起動しrootユーザになり、以下のコマンドを実行します。
 system-config-firewall-tui
+ 以下の画面が表示されるので、TABキーを押しカスタマイズにフォーカスを移動し、Enterキーを押します。
#ref(LAPP-03.gif)
#br
+TABキーでWWW (HTTP)にフォーカスを移動し、スペースキーを押します。(*が表示されます。)
+TABキーで閉じるにフォーカスを移動し、Enterキーを押します。
+OKにフォーカスを移動し、Enterキーを押します。
+iptablesの上書き警告が表示されるので、TABキーで「はい」にフォーカスを移動しEnterキーを押せば終了です。

以上で外部PCから接続できるようになります。

尚、この操作で設定されたファイルは、 ''/etc/sysconfig/iptables'' になります。

** ファイアウォール、PHP関連資料 [#a157ad66]
''GUIを利用したhttpポートの開け閉めは以下のリンクを参照してください。''
-[[CentOS/httpdを動かしたのに外部PCから見れない場合の設定]]~
PHPサポートパッケージをインストールしたときの資料です。
-[[CentOS/CentOSのPHP サポートをインストールしてみた]]

#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS