PHP 5 の設定

PHP の設定ファイル php.ini を作成して、実運用を前提に PHP の設定を行います。
Apache との連携を有効にするための Apache の設定を行い、Apache を起動して PHP の動作確認を行います。

PHP の設定

PHP の設定ファイルの雛形がソースファイルの中に含まれています。
このファイルを PHP のディレクトリの lib ディレクトリにコピーします。

# cp /usr/local/src/php-5.2.1/php.ini-dist /usr/local/php/lib/php.ini

PHP の設定ファイル php.ini ファイルを編集して PHP の設定を行います。

# vi /usr/local/php/lib/php.ini
155 行目辺り
; Whether to enable the ability to force arguments to be passed by reference
; at function call time.  This method is deprecated and is likely to be
; unsupported in future versions of PHP/Zend.  The encouraged method of
; specifying which arguments should be passed by reference is in the function
; declaration.  You’re encouraged to try and turn this option Off and make
; sure your scripts work properly with it in order to ensure they will work
; with future versions of the language (you will receive a warning each time
; you use this feature, and the argument will be passed by value instead of by
; reference).
allow_call_time_pass_reference = Off引数の参照渡しを禁止

201 行目辺り
; open_basedir, if set, limits all file operations to the defined directory
; and below.  This directive makes most sense if used in a per-directory
; or per-virtualhost web server configuration file. This directive is
; *NOT* affected by whether Safe Mode is turned On or Off.
open_basedir = /virtual:/tmpPHP スクリプトを動作させるディレクトリを制限

241 行目辺り
; Misc
; Decides whether PHP may expose the fact that it is installed on the server
; (e.g. by adding its signature to the Web server header).  It is no security
; threat in any way, but it makes it possible to determine whether you use PHP
; on your server or not.
expose_php = OffHTTP ヘッダーの PHP に関する情報を隠蔽

288 行目辺り
; Examples:
;   – Show all errors, except for notices and coding standards warnings
;error_reporting = E_ALL & ~E_NOTICE
;   – Show all errors, except for notices
;error_reporting = E_ALL & ~E_NOTICE | E_STRICT
;   – Show only errors
;   – Show all errors except for notices and coding standards warnings
error_reporting = E_ALL全てのエラー情報を取得

306 行目辺り
; Print out errors (as a part of the output).  For production web sites,
; you’re strongly encouraged to turn this feature off, and use error logging
; instead (see below).  Keeping display_errors enabled on a production web site
; may reveal security information to end users, such as file paths on your Web
; server, your database schema or other information.
display_errors = Offエラーをブラウザに表示しない

318 行目辺り
; Log errors into a log file (server-specific log, stderr, or error_log (below))
; As stated above, you’re strongly advised to use error logging in place of
; error displaying on production web sites.
log_errors = Onエラーログを出力

366 行目辺り
; Log errors to specified file.
error_log = /var/log/php.logエラーログを出力するファイルを指定

441 行目辺り
; As of 4.0b4, PHP always outputs a character encoding by default in
; the Content-type: header.  To disable sending of the charset, simply
; set it to be empty.
; PHP’s built-in default is text/html
default_mimetype = “text/html”
default_charset = “UTF-8”デフォルトの文字コードを設定

Apache の設定

Apache の設定ファイル httpd.conf ファイルを編集して PHP のファイルタイプ情報を追加します。

# vi /usr/local/httpd/conf/httpd.conf
AddType application/x-httpd-php .php

Apache の再起動

Apache の設定ファイルを変更した後は Apache を再起動する必要があります。

# /usr/local/httpd/bin/apachectl graceful

PHP の動作確認

PHP が正しく動作しているかを確認するために、公開ディレクトリに info.php というファイルを作成し以下のように記述します。

# vi /virtual/
<?php phpinfo(); ?>

ウェブブラウザを使って のようにアクセスし以下のように php に関する情報が表示されれば正しくインストールされています。

PHP の動作確認
Fedora のインストール
OpenSSH で SSH サーバー構築
NTP で時刻情報サーバー構築
Apache HTTP Server で Web サーバー構築
MySQL でデーターベースサーバー構築
PostgreSQL でデーターベースサーバー構築
PHP で Web アプリケーションサーバー構築
qmail でメールサーバー構築
Samba でファイルサーバー構築
BIND でネームサーバー構築
Tomcat で Web アプリケーションサーバー構築
ProFTPD で FTP サーバー構築
CMS でサイト構築
snort でネットワーク進入探知システム構築