(OBSOLETE) Nginx での 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://<IP_HOST>/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 に関する詳細は、以下を確認してください。
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



