php-fpm + nginx
fpm socket or tcp
http://lowendtalk.com/discussion/7289/nginx-php-fpm-unix-socket-or-tcp-ip-for-fastcgi-pass
https://github.com/perusio/php-fpm-example-config
5.3.8まではtcpのほうが良い?
http://wiki.nginx.org/PHPFcgiExample
/etc/php-fpm.d/www.conf
tcpをsocketにしてみる。
; listen = 127.0.0.1:9000
listen = /var/run/php-fpm/www.socket
apacheをnginxに変更
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
# /etc/init.d/php-fpm start
Starting php-fpm: [ OK ]
でエラーが出なければOK
* phpのいろいろ更新したのでエラーが出た、ライブラリを再構築しました。
/etc/nginx/fastcgi_params
fastcgi_param PATH_INFO $fastcgi_path_info;
を追加。
適当にnginxのconfigを書いて試す。
listen 82;
root /home/www/web_api;
access_log /var/log/nginx/www.access.log main;
error_log /var/log/nginx/www.error.log;
location / {
# rewrite .* index.php last
fastcgi_pass unix:/var/run/php-fpm/www.socket;
fastcgi_index index.php;
include fastcgi_params;
}
}
とりあえず test.phpを置いてアクセスしてみる
wet http://127.0.0.1:82/test.php
‘USER’ => ‘nginx’,
‘HOME’ => ‘/var/cache/nginx’,
‘FCGI_ROLE’ => ‘RESPONDER’,
‘QUERY_STRING’ => ”,
‘REQUEST_METHOD’ => ‘GET’,
‘CONTENT_TYPE’ => ”,
‘CONTENT_LENGTH’ => ”,
‘SCRIPT_FILENAME’ => ‘/home/www/web_api/test.php’,
‘PATH_INFO’ => ”,
‘SCRIPT_NAME’ => ‘/test.php’,
‘REQUEST_URI’ => ‘/test.php’,
‘DOCUMENT_URI’ => ‘/test.php’,
‘DOCUMENT_ROOT’ => ‘/home/www/web_api’,
‘SERVER_PROTOCOL’ => ‘HTTP/1.0′,
‘GATEWAY_INTERFACE’ => ‘CGI/1.1′,
‘SERVER_SOFTWARE’ => ‘nginx/1.2.7′,
‘REMOTE_ADDR’ => ‘127.0.0.1’,
‘REMOTE_PORT’ => ‘43512’,
‘SERVER_ADDR’ => ‘127.0.0.1’,
‘SERVER_PORT’ => ’82’,
‘SERVER_NAME’ => ”,
‘REDIRECT_STATUS’ => ‘200’,
‘HTTP_USER_AGENT’ => ‘Wget/1.12 (linux-gnu)’,
‘HTTP_ACCEPT’ => ‘*/*’,
‘HTTP_HOST’ => ‘127.0.0.1:82′,
‘HTTP_CONNECTION’ => ‘Keep-Alive’,
‘PHP_SELF’ => ‘/test.php’,
‘REQUEST_TIME_FLOAT’ => 1377949542.8223,
‘REQUEST_TIME’ => 1377949542,
)
といちお動いたようです。
ソケットの名前を間違えていたときに
HTTP request sent, awaiting response… 502 Bad Gateway
2013-08-31 20:48:41 ERROR 502: Bad Gateway.
とエラー。 nginxのerror.logに出ているので見たらわかります。
あとrerwiteルールを確認して試験運用してみます。
- Prev drupal 導入してみる
- Next nginx rewrite
- Prev ファイルサイズ関連
- Next nginx rewrite