[httpd][2.2.31]PHPを使えるように設定する

環境

今回、設定を行った環境は、以下の通りです。

  • CentOS 7.3
  • httpd 2.2.31
  • PHP 7.1.0

httpdとphpのインストールは以下を参照ください。

環境 今回、インストールを行った環境は、以下の通りです。 OS:CentOS 6.7 インストールするものは、以下です。 ...
環境 今回、インストールを行った環境は、以下の通りです。 CentOS 7.3 httpd 2.2.31 MySQL...

環境確認

PHP をコンパイルする際に「–with-apxs2=/usr/local/apache2/bin/apxs」などと付けておくと、httpd で使うPHPモジュールが 「(prefix)/modules」ディレクトリに配置されます。

実際に確認してみました。

# ls -l /usr/local/apache2/modules/ | grep php
-rwxr-xr-x 1 root root 41637384 Dec 25 08:28 libphp7.so

libphp7.so というファイルがありました。

httpd.confの設定

モジュールが存在していることを確認したら、httpd.confにPHPの動作に必要な設定を追加します。

設定内容

モジュールの読み込み

まずは、libphp7.soを読み込ませる設定です。
以下のような記述となります。

LoadModule php7_module modules/libphp7.so

私の場合、この設定はすでにhttpd.confに書かれていました。
PHPインストール時に追加されたのだと思います。

ファイルタイプの追加

.phpファイルのファイルタイプも追加します。
以下のような感じです。

<FilesMatch \.php$>
 SetHandler application/x-httpd-php
</FilesMatch>

設定ファイル

設定ファイルの書き方は自由に書いて問題ないと思いますが、今回はPHP用の設定ファイルをextraディレクトリに配置して、httpd.conf に Includeする形にしました。

httpd-php.confの作成

PHP用の設定だけを記載した設定ファイルを作成します。

# cd /usr/local/apache2/conf/extra
# vi httpd-php.conf

~~~設定ファイルの内容~~~
LoadModule php7_module modules/libphp7.so

<FilesMatch \.php$>
 SetHandler application/x-httpd-php
</FilesMatch>

<IfModule php7_module>
 PHPINIDir /usr/local/php/lib
</IfModule>
~~~ここまで~~~

(保存してviを終了)

httpd.confへInclude

作成したhttpd-php.confファイルを、httpd.confへIncludeします。

# cd /usr/local/apache2/conf
# vi httpd.conf

~~~httpd.confの末尾に以下を追加~~~
# PHP settings
Include conf/extra/httpd-php.conf
~~~ここまで~~~

(保存してviを終了)

httpdの再起動

設定が完了したら、httpdを再起動して設定を読み込ませましょう。

# /usr/local/apache2/bin/apachectl configtest
Syntax OK
# systemctl restart httpd
# ps -ef | grep httpd | grep -v httpd
root 12988 1 2 10:21 ? 00:00:00 /usr/local/apache2/bin/httpd
apache 12989 12988 0 10:21 ? 00:00:00 /usr/local/apache2/bin/httpd
apache 12990 12988 0 10:21 ? 00:00:00 /usr/local/apache2/bin/httpd
apache 12991 12988 0 10:21 ? 00:00:00 /usr/local/apache2/bin/httpd
apache 12992 12988 0 10:21 ? 00:00:00 /usr/local/apache2/bin/httpd
apache 12993 12988 0 10:21 ? 00:00:00 /usr/local/apache2/bin/httpd

動作確認

設定を読み込ませたら、PHPが動作するか確認してみましょう。

httpdのドキュメントルートに以下の内容が書かれたファイルを配置します。

<?php phpinfo(); ?>

こんな感じで作成するといいかと思います。

echo "<?php phpinfo(); ?>" > /usr/local/apache2/htdocs/phpinfo.php

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク