CentOS installation Nginx + php to: http://www.excms.cn/manual/install-centos-nginx.html installation Nginx
Install the pcre library required by Nginx
Tar zxvf pcre-8.00.tar.gz
Cd pcre-8.00
./Configure
Make & make install clean
Cd ..
Install Nginx0.8.24
Tar zxvf nginx-0.8.24.tar.gz
Cd nginx-0.8.24
./Configure -- user = www -- group = www -- prefix =/usr/local/webserver/nginx -- with-http_stub_status_module -- with-http_ssl_module
Make & make install clean
Cd ..
Create a www group, user, and Nginx log Directory
/usr/sbin/groupadd www /usr/sbin/useradd www -g www -d /dev/null -s /sbin/nologinmkdir -p /var/log/nginxchmod +w /var/log/nginxchown -R www:www /var/log/nginx
Create an Nginx configuration file
Rm-f/usr/local/webserver/nginx/conf/nginx. conf
Vi/usr/local/webserver/nginx/conf/nginx. conf
Enter the following content:
user www www;worker_processes 8;error_log /var/log/nginx/error.log;pid /var/log/nginx/nginx.pid;worker_rlimit_nofile 51200;events { use epoll; worker_connections 51200;}http { include mime.types; default_type application/octet-stream; server_names_hash_bucket_size 128; client_header_buffer_size 32k; large_client_header_buffers 4 32k; client_max_body_size 8m; sendfile on; tcp_nopush on; keepalive_timeout 30; tcp_nodelay on; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; fastcgi_buffer_size 64k; fastcgi_buffers 4 64k; fastcgi_busy_buffers_size 128k; fastcgi_temp_file_write_size 128k; gzip on; gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.1; gzip_comp_level 2; gzip_types text/plain application/x-javascript text/css application/xml gzip_vary on; server { listen 80; server_name localhost; root /home/excms; index index.html index.htm index.php; location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location /nginx_status { stub_status on; access_log off; } }}
Create Nginx boot script
Vi/etc/init. d/nginx
Add the following content
#!/bin/bash## chkconfig: - 85 15# description: Nginx is a World Wide Web server.# processname: nginxnginx=/usr/local/webserver/nginx/sbin/nginxconf=/usr/local/webserver/nginx/conf/nginx.confcase $1 in start) echo -n "Starting Nginx" $nginx -c $conf echo " done" ;; stop) echo -n "Stopping Nginx" killall -9 nginx echo " done" ;; test) $nginx -t -c $conf ;;reload) echo -n "Reloading Nginx" ps auxww | grep nginx | grep master | awk '{print $2}' | xargs kill -HUP echo " done" ;;restart)$0 stop$0 start ;; show) ps -aux|grep nginx ;; *) echo -n "Usage: $0 {start|restart|reload|stop|test|show}" ;;esac
Set executable properties for the nginx. sh script
Chmod + x/etc/init. d/nginx
Add Nginx as a system service (automatically start upon startup)
chkconfig --add nginxchkconfig nginx on
Start Nginx
Service nginx start
Smoothly change the Nginx configuration without stopping the Nginx service
After modifying the/usr/local/webserver/nginx/conf/nginx. conf configuration file, run the following command to check whether the configuration file is correct:
Service nginx test
If the following two lines of information are displayed, the configuration file is correct:
The configuration file/usr/local/webserver/nginx/conf/nginx. conf syntax is OK
The configuration file/usr/local/webserver/nginx/conf/nginx. conf was tested successfully
Smooth Nginx configuration change
Service nginx reload
Install GD and install zlib
tar zxvf zlib-1.2.3.tar.gzcd zlib-1.2.3./configuremake && make install cleancd ..
Install libpng
tar zxvf libpng-1.2.40.tar.gzcd libpng-1.2.40./configuremake && make install cleancd ..
Install jpeg
tar zxvf jpegsrc.v7.tar.gzcd jpeg-7./configure -enable-shared -enable-staticmake && make install cleancd ..
Install freetype
tar zxvf freetype-2.3.11.tar.gzcd freetype-2.3.11./configuremake && make install cleancd ..
Install gd2.0.35
tar zxvf gd-2.0.35.tar.gzcd gd-2.0.35./configuremake && make install cleancd ..
Install libxml2
tar -zxvf libxml2-2.7.6.tar.gzcd libxml2-2.7.6./configuremake && make install cleancd ..
Install PHP
Libiconv
Tar zxvf libiconv-1.13.tar.gz
Cd libiconv-1.13
./Configure -- prefix =/usr/local
Make & make install clean
Cd ..
Compile and install PHP (FastCGI mode)
Tar zxvf php-5.2.11.tar.gz
Gzip-cd php-5.2.11-fpm-0.5.13.diff.gz | patch-d php-5.2.11-p1
Cd php-5.2.11
. /Configure -- prefix =/usr/local/webserver/php -- with-config-file-path =/usr/local/webserver/php/etc -- with-mysql =/usr/ local/webserver/mysql -- with-iconv-dir -- with-freetype-dir -- with-jpeg-dir -- with-png-dir -- with-zlib -- with-gd -- enable- gd-native-ttf -- with-libxml-dir -- enable-xml -- disable-rpath -- enable-discard-path -- enable-safe-mode -- enable-bcmath -- enable-shmop -- enable-sysvsem -- enable-inline-optimization -- with-curlwrappers -- enable-mbregex -- enable-fastcgi -- enable-fpm -- enable-force-cgi-redirect -- enable-mbstring --- openssl -- enable-pcntl -- enable-sockets
Make ZEND_EXTRA_LIBS = '-liconv'
Make install clean
Cp php. ini-dist/usr/local/webserver/php/etc/php. ini
Cd ..