2016年3月19日土曜日

CentOS6.7にPHP環境をインストール

最近仕事でPHPを...

 最近の案件で、PHPを使う必要が出てきたので、慌てて(?)勉強しています。まずは私の自宅のサブマシン(CentOS)に開発環境を構築していきます。

yumでhttpdとphpをインストール


「端末」を起動してrootに変更して、以下のコマンドを実行します。

# yum install httpd php

途中「これでいいですか? [y/N]と表示されるので[y]を入力します。これでインストールが完了します。
その後、apacheを起動します。起動中かどうかは以下のコマンドで確認できます。

# /etc/init.d/httpd status
http (pid xxxx) を実行中...


と表示されていれば、apacheが起動されています。
起動されていない場合は、以下のコマンドでapacheを起動します。

# /etc/init.d/httpd start

ちなみに、停止は以下のコマンドで行えます。
# /etc/init.d/httpd stop


PHPの動作確認


次にPHPの動作確認を行います。動作確認は以下のコマンドで行います。

# php -v
PHP 5.3.3 (cli) (built: Feb 9 2016 10:21:34)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

次にApache経由でPHPが動作することを確認します。動作確認用にphpinfo()をphpinfo.phpファイルに記述します。ファイルを作成する場所は「/var/www/html」の配下です。
作成後にブラウザにURL「http://localhost/phpinfo.php」を入力して、PHP INFOが表示されればOKです。

※別のPCからアクセスさせる場合は80番ポートを開放します。デフォルトではアクセスできません。80番ポートの開放は、iptablesを編集します。手順は以下の通りです。

(1)iptablesファイルをバックアップします。名前は適当に決めてください。

# cp /etc/sysconfig/iptables /etc/sysconfig/iptables.org.yyyymmdd

(2)viでiptablesを編集します。
# vi /etc/sysconfig/iptables

-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icml-host-prohibited


念のためdiffで差分を確認します。
# diff iptables.org.yyyymmdd iptables

10a11
> -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT


(3)ファイアウォールの設定を反映します。
# service iptables restart

iptables: チェインをポリシー ACCEPT へ設定中filter         [  OK  ]
iptables: ファイアウォールルールを消去中:                  [  OK  ]
iptables: モジュールを取り外し中:                          [  OK  ]
iptables: ファイアウォールルールを適用中:                  [  OK  ]


(4)別のPCブラウザのURLに「http://端末のIPアドレス/phpinfo.php」を入力します。これで別PCでもPHP INFOが表示されればOKです。