| 
 
 
 
	#安装Nginx 
	[root@dba01 ~]# tar -zxvf nginx-1.2.7.tar.gz && cd nginx-1.2.7 
	[root@dba01 nginx-1.2.7]# /usr/sbin/groupadd www[root@dba01 nginx-1.2.7]# /usr/sbin/useradd -g www www
 [root@dba01 nginx-1.2.7]# ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
 [root@dba01 nginx-1.2.7]# make && make install
 [root@dba01 ~]# /usr/local/nginx/sbin/nginx
 /usr/local/nginx/sbin/nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
 [root@dba01 ~]# ln -s /lib64/libpcre.so.0 /lib64/libpcre.so.1
 [root@dba01 ~]# /usr/local/nginx/sbin/nginx
 [root@dba01 ~]# netstat -lntp|grep nginx
 tcp        0      0 0.0.0.0:80                  0.0.0.0:*                  LISTEN      29508/nginx
 [root@dba01 ~]# /etc/init.d/iptables stop
 
	#安装php
 #备注:php5.3.3以后的版本源码不需要打php-fpm补丁,该补丁已经集成进5.3.3,在编译时,不需再--enable-fastcgi了,在php5.3.3中强制启用fastcgi.
 [root@dba01 nginx-1.2.7]# cd
 [root@dba01 ~]# tar -zxvf libmcrypt-2.5.8.tar.gz && cd libmcrypt-2.5.8
 
	[root@dba01 libmcrypt-2.5.8]# ./configure && make && make install 
	[root@dba01 libmcrypt-2.5.8]# cd
 [root@dba01 ~]# tar -zxvf mhash-0.9.9.9.tar.gz && cd mhash-0.9.9.9
 
	[root@dba01 mhash-0.9.9.9]# ./configure && make && make install 
	[root@dba01 mhash-0.9.9.9]# cd ..
 [root@dba01 ~]# tar -zxvf mcrypt-2.6.8.tar.gz && cd mcrypt-2.6.8
 config.status: executing default commands
 [root@dba01 mcrypt-2.6.8]# LD_LIBRARY_PATH=/usr/local/lib ./configure --prefix=/usr/local/
 [root@dba01 mcrypt-2.6.8]# make && make install
 
	  
	[root@dba01 mcrypt-2.6.8]# cd ..
 [root@dba01 ~]# tar -zxvf libiconv-1.14.tar.gz
 
	[root@dba01 ~]# cd libiconv-1.14[root@dba01 libiconv-1.14]# ./configure && make && make install
 [root@dba01 libiconv-1.14]# cd
 
	[root@dba01 ~]# useradd -g nginx nginx -s /sbin/nologin
 [root@dba01 ~]# tar -zxvf php-5.3.11.tar.gz
 
	[root@dba01 ~]# cd php-5.3.11[root@dba01 php-5.3.11]# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap
 
	[root@dba01 php-5.3.11]# make ZEND_EXTRA_LIBS='-liconv'[root@dba01 php-5.3.11]# make install
 [root@dba01 php-5.3.11]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
 [root@dba01 php-5.3.11]# cp -rf php.ini-production /usr/local/php/etc/php.ini
 [root@dba01 php-5.3.11]# chmod +x /etc/init.d/php-fpm
 [root@dba01 php-5.3.11]# chkconfig php-fpm on
 [root@dba01 php-5.3.11]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
 
	[root@dba01 php-5.3.11]# cd
 
	[root@dba01 ~]# tar -xjvf eaccelerator-0.9.6.1.tar.bz2 
	[root@dba01 ~]# cd eaccelerator-0.9.6.1[root@dba01 eaccelerator-0.9.6.1]#  /usr/local/php/bin/phpize
 [root@dba01 eaccelerator-0.9.6.1]# ./configure --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-config && make && make install
 
	[root@dba01 eaccelerator-0.9.6.1]# cd ..
 [root@dba01 ~]# tar zxvf PDO_MYSQL-1.0.2.tgz
 
	[root@dba01 ~]# cd PDO_MYSQL-1.0.2[root@dba01 PDO_MYSQL-1.0.2]# /usr/local/php/bin/phpize
 [root@dba01 PDO_MYSQL-1.0.2]# ./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql && make && make install && cd
 
	[root@dba01 ~]# yum -y install libevent libevent-devel
 [root@dba01 ~]# tar -zxvf memcached-1.2.5.tar.gz
 
	[root@dba01 ~]# cd memcached-1.2.5[root@dba01 memcached-1.2.5]# ./configure --prefix=/usr/local/memcache && make && make install && cd
 
	  
	[root@dba01 ~]# tar -zxvf memcache-2.2.5.tgz
 [root@dba01 ~]# cd memcache-2.2.5
 [root@dba01 memcache-2.2.5]# /usr/local/php/bin/phpize
 [root@dba01 memcache-2.2.5]# ./configure --with-php-config=/usr/local/php/bin/php-config && make && make install && cd
 
	[root@dba01 ~]# sed -i 's#output_buffering = Off#output_buffering = On#' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i "s#; always_populate_raw_post_data = On#always_populate_raw_post_data = On#g" /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i "s#; cgi.fix_pathinfo=0#cgi.fix_pathinfo=0#g" /usr/local/php/etc/php.ini
 [root@dba01 ~]# mkdir -p /usr/local/eaccelerator_cache
 [root@dba01 ~]# sed -i '1290a [eaccelerator]' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1291a zend_extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1292a eaccelerator.shm_size="64"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1293a eaccelerator.cache_dir="/usr/local/eaccelerator_cache"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1294a eaccelerator.enable="1"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1295a eaccelerator.optimizer="1"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1296a eaccelerator.check_mtime="1"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1297a eaccelerator.debug="0"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1298a eaccelerator.filter=""' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1299a eaccelerator.shm_max="0"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1300a eaccelerator.shm_ttl="3600"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1301a eaccelerator.shm_prune_period="3600"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1302a seaccelerator.shm_only="0"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1303a eaccelerator.compress="1"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '1304a eaccelerator.compress_level="9"' /usr/local/php/etc/php.ini
 [root@dba01 ~]# sed -i '58s#<!--##g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '58s#-->##g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '59s#<!--##g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '59s#-->##g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '63s#<!--##g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '63s#-->##g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '66s#<!--##g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '66s#-->##g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '63s#nobody#nginx#g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '66s#nobody#nginx#g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '79s#5#128#g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '113s#1024#20480#g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# sed -i '132s#500#1024#g' /usr/local/php/etc/php-fpm.conf
 [root@dba01 ~]# ulimit -SHn 65535
 [root@dba01 ~]# /usr/local/php/sbin/php-fpm
 [root@dba01 ~]# netstat -lntp|grep php-fpm
 tcp        0      0 127.0.0.1:9000              0.0.0.0:*                  LISTEN      18005/php-fpm
 
	[root@dba01 ~]# mkdir -p /var/www/memcache;mkdir -p /var/www/bbs
 [root@dba01 ~]# cat /usr/local/nginx/conf/nginx.conf
 user  nginx nginx;
 
	worker_processes 8;
 
	error_log  /app/logs/nginx_error.log  crit;
 
	pid        /usr/local/nginx/nginx.pid;
 
	#Specifies the value for maximum file descriptors that can be opened by this process.
 worker_rlimit_nofile 65535;
 
	events
 {
 use epoll;
 worker_connections 20480;
 }
 
	http
 {
 include      mime.types;
 default_type  application/octet-stream;
 
	#charset  gb2312;
 
	log_format  wikilogs  '$remote_addr - $remote_user [$time_local] "$request" '
 '$status $body_bytes_sent "$http_referer" '
 '"$http_user_agent" $http_x_forwarded_for';
 
	  
	log_format  bbslogs  '$remote_addr - $remote_user [$time_local] "$request" '
 '$status $body_bytes_sent "$http_referer" '
 '"$http_user_agent" $http_x_forwarded_for';
 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 60;
 
	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.0;
 gzip_comp_level 2;
 gzip_types      text/plain application/x-javascript text/css application/xml;
 gzip_vary on;
 
	#limit_zone  crawler  $binary_remote_addr  10m;
 
	server
 {
 listen      80;
 server_name  wiki.jc.com;
 index index.html index.htm index.php;
 root  /var/www/memcache;
 
	location ~ .*\.(php|php5)?$
 {
 #fastcgi_pass  unix:/tmp/php-cgi.sock;
 fastcgi_pass  127.0.0.1:9000;
 fastcgi_index index.php;
 include fastcgi.conf;
 }
 
	location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
 {
 expires      30d;
 }
 
	location ~ .*\.(js|css)?$
 {
 expires      1h;
 }
 
	access_log  /app/logs/wikilogs.log  wikilogs;
 }
 server
 {
 listen      80;
 server_name  www.jc.com;
 index index.html index.htm index.php;
 root  /var/www/bbs;
 
	location ~ .*\.(php|php5)?$
 {
 #fastcgi_pass  unix:/tmp/php-cgi.sock;
 fastcgi_pass  127.0.0.1:9000;
 fastcgi_index index.php;
 include fastcgi.conf;
 }
 
	location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
 {
 expires      30d;
 }
 
	location ~ .*\.(js|css)?$
 {
 expires      1h;
 }
 
	access_log  /app/logs/bbslogs.log  bbslogs;
 }
 
	}
 
	[root@dba01 ~]# vim /usr/local/php/etc/php.ini +1306  添加如下:
 [memcache]
 extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/"
 extension=memcache.so
 
	  
	[root@dba01 ~]# cd /etc/init.d/
 [root@dba01 init.d]# rz -y
 rz waiting to receive.
 zmodem trl+C ȡ
 
	100%      1 KB    1 KB/s 00:00:01      0 Errors
 
	[root@dba01 init.d]# dos2unix nginx
 
	dos2unix: converting file nginx to UNIX format ...[root@dba01 init.d]# chmod 755 nginx
 [root@dba01 init.d]# cat nginx
 #!/bin/sh
 #
 # nginx - this script starts and stops the nginx daemin
 #
 # chkconfig:  - 85 15
 # description:  Nginx is an HTTP(S) server, HTTP(S) reverse \
 #              proxy and IMAP/POP3 proxy server
 # processname: nginx
 # config:      /usr/local/nginx/conf/nginx.conf
 # pidfile:    /usr/local/nginx/logs/nginx.pid
 
	# Source function library.
 . /etc/rc.d/init.d/functions
 
	# Source networking configuration.
 . /etc/sysconfig/network
 
	# Check that networking is up.
 [ "$NETWORKING" = "no" ] && exit 0
 
	nginx="/usr/local/nginx/sbin/nginx"
 prog=$(basename $nginx)
 
	NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
 
	lockfile=/var/lock/subsys/nginx
 
	start() {
 [ -x $nginx ] || exit 5
 [ -f $NGINX_CONF_FILE ] || exit 6
 echo -n $"Starting $prog: "
 daemon $nginx -c $NGINX_CONF_FILE
 retval=$?
 echo
 [ $retval -eq 0 ] && touch $lockfile
 return $retval
 }
 
	stop() {
 echo -n $"Stopping $prog: "
 killproc $prog -QUIT
 retval=$?
 echo
 [ $retval -eq 0 ] && rm -f $lockfile
 return $retval
 }
 
	restart() {
 configtest || return $?
 stop
 start
 }
 
	reload() {
 configtest || return $?
 echo -n $"Reloading $prog: "
 killproc $nginx -HUP
 RETVAL=$?
 echo
 }
 
	force_reload() {
 restart
 }
 
	configtest() {
 $nginx -t -c $NGINX_CONF_FILE
 }
 
	rh_status() {
 status $prog
 }
 
	rh_status_q() {
 rh_status >/dev/null 2>&1
 }
 
	case "$1" in
 start)
 rh_status_q && exit 0
 $1
 ;;
 stop)
 rh_status_q || exit 0
 $1
 ;;
 restart|configtest)
 $1
 ;;
 reload)
 rh_status_q || exit 7
 $1
 ;;
 force-reload)
 force_reload
 ;;
 status)
 rh_status
 ;;
 condrestart|try-restart)
 rh_status_q || exit 0
 ;;
 *)
 echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
 exit 2
 esac
 
	[root@dba01 init.d]# mkdir -p /app/logs
 [root@dba01 init.d]# /etc/init.d/nginx stop
 Stopping nginx:                                            [  OK  ]
 [root@dba01 init.d]# netstat -lntp|grep nginx
 [root@dba01 init.d]# /etc/init.d/nginx restart
 nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
 nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
 Stopping nginx:                                            [FAILED]
 Starting nginx:                                            [  OK  ]
 [root@dba01 init.d]# netstat -lntp|grep nginx
 tcp        0      0 0.0.0.0:80                  0.0.0.0:*                  LISTEN      18084/nginx
 
	[root@dba01 init.d]# cd /var/www/memcache/[root@dba01 memcache]# cat phpinfo.php
 <?php
 phpinfo();
 ?>
 
	[root@dba01 memcache]# ifconfig eth0eth0      Link encap:Ethernet  HWaddr 00:0C:29:CA:47:D4
 inet addr:192.168.1.118  Bcast:255.255.255.255  Mask:255.255.255.0
 inet6 addr: fe80::20c:29ff:feca:47d4/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 RX packets:263728 errors:0 dropped:0 overruns:0 frame:0
 TX packets:172759 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:294558603 (280.9 MiB)  TX bytes:19137975 (18.2 MiB)
 
	测试:http://192.168.1.118/phpinfo.php 
	(责任编辑:IT) |