====== (OBSOLETE) Nginx での Pandora FMS インストール ======
{{indexmenu_n>4}}
[[ja:documentation:start|Pandora FMS ドキュメント一覧に戻る]]
===== NGINX+PHP-FPM のインストールと、Pandora FMS のための設定 =====
Nginx is a reverse high availability web/proxy server for HTTP, HTTPS, SMTP, POP3, and IMAP protocols. It is free and open source software, simplified licensed by BSD. It is used by a large list of websites known as WordPress, Netflix, Hulu, GitHub, Ohloh, SourceForge, TorrentReactor and some parts of Facebook.
Nginx は、HTTP, HTTPS, SMTP, POP3 および IMAP プロトコルのための高可用性 Web/プロキシサーバです。フリーのオープンソースソフトウエアであり、BSD ライセンスです。WordPress, Netflix, Hulu, GitHub, Ohloh, SourceForge, TorrentReactor および Facebook の一部など、多くのサイトで利用されています。
NGINX は、apache の代替えとなるソフトウエアです。
このガイドでは、ウェブサーバの変更方法を段階的に説明します。ここでは、CentOS 6 のマシンで、Apache を使っていて、NGINX を使いたい場合を示します。
==== NGINGX のインストール ====
最初に Apache を停止します。
service httpd stop
リポジトリを保存するためにディレクトリを作成します。
mkdir /root/temp ; cd /root/temp
http://nginx.org/packages/ から、NGINX の全リポジトリをダウンロードします。この例では、CentOS 6 を選択しています。
wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
リポジトリを追加します。
rpm -i nginx-release-centos-6-0.el6.ngx.noarch.rpm
NGINX をインストールします。
yum install nginx
サービスを開始します。
service nginx start
正しく動作しているか確認します。ブラウザを開き、http:///index.html と入力したら、"Welcome to nginx!" が表示されるはずです。
==== NGINX の設定 ====
/var/www/html/ ディレクトリとそのサブディレクトリのオーナーとグループを変更します。
chown -R nginx:nginx /var/www/html/
/etc/nginx/nginx.conf ファイルはデフォルトのままとするか、希望のパラメータ調整をします。
user nginx;
worker_processes 5;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 4096;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
## en conf.d/ The line where we will add the server configuration.
}
/etc/nginx/conf.d/ に pandora.conf ファイルを作成し、その他すべての .conf ファイルは削除するか移動します。
nano /etc/nginx/conf.d/pandora.conf
サーバの設定は次の通りです。
upstream php_backend {
server unix:/tmp/php5-fpm.sock; ## Socket path.
}
server{
listen 80;
server_name 192.168.70.197; ## Higly recommend to set private server ip,
## otherwise if you set it to "localhost" or "127.0.0.1"
## you could get some errors.
root /var/www/html;
index index.php index.html;
access_log logs/pandora.log combined;
client_max_body_size 500M;
location ~* \.(png|jpg|jpeg|gif|ico)$ {
expires 720h;
log_not_found on;
}
location ~* \.(css|js|xml)$ {
gzip_static on;
expires 720h;
log_not_found on;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_intercept_errors on;
fastcgi_pass php_backend;
fastcgi_index index.php;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
}
location / {
try_files $uri $uri/ $uri.php?$args;
}
}
ログディレクトリを作成します。
mkdir /etc/nginx/logs/
nginx が正しく設定できているか確認します。
nginx -t
新たな設定を読み込ませるために nginx を再起動します。
service nginx restart
NGINX に関する詳細は、以下を確認してください。
http://nginx.org/en/docs/beginners_guide.html
==== Php-fpm のインストール ====
php-fpm をインストールします。(CentOS のリポジトリから取得できます)
yum install php-fpm
以下のライブラリがインストールされているか確認し、されていなければインストールします。
yum install php-mbstring php-gd php-ldap php-snmp graphviz php-mysql
==== Php-fpm の設定 ====
/etc/php-fpm.d/www.conf ファイルを編集します。
;listen = 127.0.0.1:9000
listen = /tmp/php5-fpm.sock ; #Socket path.
;listen.allowed_clients =
;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0666
listen.owner = nginx
listen.group = nginx
listen.mode = 0666
user = nginx
group = nginx
/var/lib/php/session ディレクトリのオーナーとグループを変更します。
chown nginx:nginx /var/lib/php/session
APC をインストールします。
yum install php-pecl-apc
APC の設定は /etc/php.d/apc.ini で変更できます。処理の高速化のために重要なパラメータは以下の通りです。
; The size of each shared memory segment, with M/G suffix
apc.shm_size=64M
サービスを開始します。
service php-fpm start
==== 自動起動 ====
システム起動時に nginx と php-fpm が起動するようにし、Apache は起動しないようにします。
chkconfig httpd off
chkconfig nginx on
chkconfig php-fpm on
==== ログ ====
nginx, php-fpm およびコンソールのログ(/var/www/html/pandora_console/pandora_console.log)を確認してください。
=== NGINX のログ ===
/var/log/nginx/access.log /var/log/nginx/error.log
=== php-fpm のログ ===
/var/log/php-fpm/www-error.log /var/log/php-fpm/error.log
===== NGINX と Apache の違い =====
NGINX のインストールにより、ロード時間のパフォーマンスが改善されます。2台の同じマシン(同じメモリ、CPU、データベース)で比較した情報を示します。一方は Apache で、もう一方は NGINX です。
メインメニュー:
Apache: (4,81s)
{{ wiki:apache1.png?550 }}
NGINX: (4,46s)
{{ wiki:nginx1.png?550 }}
監視設定画面:
Apache: (5,83s)
{{ wiki:apache2.png?550 }}
NGINX: (4,84s)
{{ wiki:nginx2.png?550 }}