2010年3月24日水曜日

Ubuntu9.10 PHP設定

① まず、PHP5とPHP5-MySQLをSynapticパッケージマネージャーで指定してインストール。

② 次に端末で

$ sudo gedit /etc/php5/apache2/php.ini

を実行し、次を設定

; PHPを実行できるディレクトリを指定
open_basedir = /usr/share/:/var/www/html:/home/username/

;引数の参照渡しを禁止
allow_call_time_pass_reference = Off

; PHPのバージョンを隠す
expose_php = Off

; ログに記録するレベルを指定
; E_STRICTはPHP5で推奨されていない関数が使用された場合などに警告を出す
error_reporting  =  E_ALL & ~E_NOTICE | E_STRICT

; エラーをHTMLで表示しないようにする
display_errors = Off

; phpのエラーをログに記録する
log_errors = On

; ログに記録するサイズを増やす(4KB)
log_errors_max_len = 4096

; 記録するログのファイルを指定(あとで作成)
error_log = /var/log/php/php_error_log

; 確実にoffにしておく。PHP6.0.0で削除される機能
magic_quotes_gpc = Off

; デフォルトの文字コードを指定
default_charset = "UTF-8"

; require()やinclude()するファイルのディレクトリを指定
include_path = ".:/usr/share/php:/usr/share/pear"

; 動的モジュールのロードをオフにする
enable_dl = Off

; ファイルアップロードを使わない場合は確実にOffに
file_uploads = Off

; URIをファイルとして扱わないようにする
; これが有効だとインターネットのどこからでもコードを読み込んで実行できてしまう可能性がある
allow_url_fopen = Off

; JavaScriptでセッションIDを使用しない場合は1に
session.cookie_httponly = 1

; セッションIDを作成する際の外部リソースへのパスを指定。読み込むバイト数も指定しておく
session.entropy_length = 32
session.entropy_file = /dev/urandom

; SHA-1の指定に変更しておく
session.hash_function = 1

[mbstring]
; 言語環境を日本語に設定
mbstring.language = Japanese

; default_charsetと同じ文字コードを指定
mbstring.internal_encoding = UTF-8

③ 次に端末で以下を実行

$ sudo mkdir /var/log/php

$ sudo touch /var/log/php/php_error_log

$ sudo chown -R www-data. /var/log/php

(PHPのエラーをログに記録する際に指定したファイルの作成をしてやる。)

$sudo gedit /etc/logrotate.d/php

テキストファイルを開き、次をコピペして保存。

/var/log/php/php_error_log {
  weekly  missingok
  notifempty
  sharedscripts
  postrotate
    /etc/init.d/apache2 reload > /dev/null 2>/dev/null || true
  endscript
}

PHPのエラーログを1週間という単位でローテーション)

④ 次に端末で以下を実行

$ sudo /etc/init.d/apache2 restart

$sudo gedit /var/www/html/info.php 

テキストファイルが開くので

<?php phpinfo(); ?>

をコピペして保存。

⑤ ブラウザでhttp://localhost/html/info.phpを開き、

Screenshot




この様なPHP に関する情報が表示されれば正しくインストールされています。

http://debianj.com/debian/php/setting.html
http://d.hatena.ne.jp/Fiore/20080417/1208466735
を参考にしました。

0 件のコメント: