設定


httpd.conf

モジュールの登録はhttpd.confに書き込まれるが
コンテントタイプは書き込まれないので追記する。

AddType application/x-httpd-php .php

php.ini

ソース内のphp.ini-development|productionがテンプレート。
初期設置場所は/usr/local/lib

cp php.ini-production /usr/local/lib/php.ini

以下、ウチで変更したセクション

PHPセクション→Dynamic Extensions

extension="/usr/local/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"

eaccelerator.compress="1" と
eaccelerator.compress_level="9" が
なくなってる( ´ω`)

オプション説明っぽい何かデフォルト
allowed_admin_pathコンパネ用PHPファイルのパス。DocumentRoot
shm_size使用する共有メモリサイズ。単位はMB。0でOSのデフォルト値0
cache_dirディスクキャッシュの場所。/tmp/eaccelerator
log_fileログファイルの場所。無指定?
enableeAcceleratorの有効無効フラグ。1で有効、0で無効1
optimizerのぞき穴的最適化の有効無効フラグ。1で有効、0で無効1
check_mtimePHPファイル更新チェックの有効無効フラグ。
有効にすると更新されたファイルを再コンパイルする。1で有効、0で無効
1
debugデバッグログの有効無効フラグ。1で有効、0で無効0
filterキャッシュするファイル指定。*.php *.phtmlなど。
無指定ですべてのPHPファイルをキャッシュする。
無指定
shm_maxeaccelerator_put()関数で置けるサイズの最大値。単位はバイトだがk、Mが利用可能。0で無制限。0
shm_ttlキャッシュミスしたとき指定時間以上経過したキャッシュを共有メモリから削除する。単位は秒。0で削除しない0
shm_prune_period前回のキャッシュ削除から再度削除を試みるまでの間隔。単位は秒。0で削除しない。0
shm_onlyディスクキャッシュ有効無効フラグ。1で無効、0で有効。0

Dateセクション

date.timezone = Asia/Tokyo

mbstringセクション

mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = UTF-8

PHPセクション

の言語設定。5.4以降で有効。昔、--enable-zend-multibyteやmbstring.script_encodingだったもの。
zend.multibyte=On
zend.script_encoding=UTF-8

UTF-8ですべて統一すればこの辺で悩む事はまずない。

この程度( ´ω`)

php-fpm.conf

/usr/local/etc/php-fpm.conf.defaultが入るので名前変更して編集。
詳細は
http://www.php.net/manual/ja/install.fpm.configuration.php

;include=etc/fpm.d/*.conf

;;;;;;;;;;;;;;;;;;
; Global Options ;
;;;;;;;;;;;;;;;;;;
[global]
; prefix->/usr/local/var
pid       = run/php-fpm/php-fpm.pid
error_log = log/php-fpm.log
log_level = notice
;emergency_restart_threshold = 0
;emergency_restart_interval = 0
;process_control_timeout = 0
daemonize = yes

;;;;;;;;;;;;;;;;;;;;
; Pool Definitions ;
;;;;;;;;;;;;;;;;;;;;
[apache]
;prefix = /path/to/pools/$pool
listen = 127.0.0.1:9000
;listen.backlog = -1
listen.allowed_clients = 127.0.0.1

;SocketOption
;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0666

;Set Same Apache User and Group
user  = daemon
group = daemon
pm = dynamic
pm.max_children      = 50
pm.start_servers     = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests      = 5000
pm.status_path = /fpm-status
;ping.path = /ping
;ping.response = pong
access.log = /usr/local/var/log/$pool.access.log
access.format = %R - - [%t] " \"%m %r%Q%q\" " %s %f %{mili}d"msec " %{kilo}M"kbyte " "Load:"%C%%
;request_terminate_timeout = 0
;request_slowlog_timeout = 0
;slowlog = log/$pool.log.slow
;rlimit_files = 1024
;rlimit_core = 0
;chroot =
;chdir = /var/www
catch_workers_output = yes ←大事な気がする

;env[HOSTNAME] = $HOSTNAME
;env[PATH] = /usr/local/bin:/usr/bin:/bin
;env[TMP] = /tmp
;env[TMPDIR] = /tmp
;env[TEMP] = /tmp
;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com
;php_flag[display_errors] = off
;php_admin_value[error_log] = /var/log/fpm-php.www.log
;php_admin_flag[log_errors] = on
;php_admin_value[memory_limit] = 32M

statusページ

Apacheのstatusの簡易版的表示が出来る。
nginxで、このstatusページを表示するにはnginxのほうで設定が必要。

location ~ ^/(status|ping)$ {
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

など追加。結果は

curl http://localhost/status

pool:                 www
process manager:      dynamic
accepted conn:        8
listen queue len:     0
max listen queue len: 128
idle processes:       20
active processes:     0
total processes:      20
max children reached: 0

html形式

curl http://localhost/status?html

<table>
<tr><th>pool</th><td>www</td></tr>
<tr><th>process manager</th><td>dynamic</td></tr>
<tr><th>accepted conn</th><td>9</td></tr>
<tr><th>listen queue len</th><td>0</td></tr>
<tr><th>max listen queue len</th><td>128</td></tr>
<tr><th>idle processes</th><td>20</td></tr>
<tr><th>active processes</th><td>0</td></tr>
<tr><th>total processes</th><td>20</td></tr>
<tr><th>max children reached</th><td>0</td></tr>
</table>

json形式

curl http://localhost/status?json

{"pool":"www","process manager":"dynamic","accepted conn":10,
 "listen queue len":0,"max listen queue len":128,"idle processes":20,
 "active processes":0,"total processes":20,"max children reached":0}

トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2012-11-05 (月) 21:23:39 (1998d)