nginxとphpの統合
3966 ワード
nginxインストール
phpインストール
nginx構成
ダミープロファイルの作成
nginxを再起動して検証しphp解析をテストする
tar zxvf pcre-8.37.tar.gz ;tar zxvf nginx-1.9.2.tar.gz
cd pcre-8.37
./configure ;make ;make install
cd ../nginx-1.9.2
./configure --prefix=/opt/nginx --with-http_ssl_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_stub_status_module --with-mail --with-http_realip_module
make
make install
ln -s /usr/local/lib/libpcre.so.1 /lib64
/opt/nginx/sbin/nginx
phpインストール
wget http://www.atomicorp.com/installers/atomic
sh ./atomic
yum install php-mcrypt libmcrypt libmcrypt-devel -y
tar zxvf php-5.5.26.tar.gz
cd php-5.5.26
'./configure' '--prefix=/opt/php' '--enable-fpm' '--with-mcrypt' '--enable-mbstring' '--enable-inline-optimization' '--with-bz2' '--with-zlib' '--with-soap' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-pcntl' '--enable-mbregex' '--with-mhash' '--enable-zip' '--with-pcre-regex' '--with-mysql' '--with-mysqli' '--with-gd' '--with-jpeg-dir' '--with-freetype-dir=/usr/lib64' '--with-pdo-mysql';
make ;make install
cd /opt/php/etc/
cp php-fpm.conf.default php-fpm.conf
/opt/php/sbin/php-fpm
nginx構成
cd /opt/nginx/conf/
cat < nginx.conf
user nobody;
worker_processes 2;
worker_cpu_affinity 00000001 00000010 ;
pid /var/run/nginx.pid;
worker_rlimit_nofile 204800;
events
{
use epoll;
worker_connections 204800;
}
http {
server_tokens off;
include 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;
error_log /var/log/nginx/error.log warn;
charset utf-8;
server_names_hash_bucket_size 128;
client_header_buffer_size 512k;
large_client_header_buffers 4 512k;
client_max_body_size 8m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 16k;
fastcgi_buffers 16 16k;
fastcgi_busy_buffers_size 16k;
fastcgi_temp_file_write_size 16k;
fastcgi_cache_valid 200 302 1h;
fastcgi_cache_valid 301 1d;
fastcgi_cache_valid any 1m;
fastcgi_cache_min_uses 1;
fastcgi_cache_use_stale error timeout invalid_header http_500;
open_file_cache max=204800 inactive=20s;
open_file_cache_min_uses 1;
open_file_cache_valid 30s;
tcp_nodelay on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
include /opt/nginx/conf.d/*.conf;
}
EOF
ダミープロファイルの作成
mkdir ../conf.d/
vim ../conf.d/testphp.conf
server {
listen 80;
server_name 127.0.0.1;
real_ip_header X-Forwarded-For;
location / {
root html/syslog;
index index.html index.htm index.php;
if (!-e $request_filename){
rewrite ^(.*)$ /index.php;
}
}
error_page 500 502 503 504 /50x.html;
error_page 404 /404.html;
location = /50x.html {
root html;
}
location ~ \.php$ {
root html/syslog;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
nginxを再起動して検証しphp解析をテストする
vim /opt/nginx/html/syslog/phpinfo.php
:wq