你的位置:首页 > 操作系统

[操作系统]LNMP环境搭建完整步骤


零、resource   http://pan.baidu.com/s/1o83r3S2

一、centos 6.4、VirtualBox 5.0.14

二、nginx 1.9.9

     安装

[root@pc ~]# cd /usr/local/src/[root@pc src]# yum install wget[root@pc src]# wget http://heanet.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.tar.gz[root@pc src]# tar -xzf pcre-8.38.tar.gz[root@pc src]# cd pcre-8.38/[root@pc pcre-8.38]# ./configure --prefix=/usr/local/pcre-8.38[root@pc pcre-8.38]# make[root@pc pcre-8.38]# make install[root@pc pcre-8.38]# cd ../[root@pc src]# yum -y install libjpeg libjpeg-devel libpng libpng-devel libvpx libvpx-devel libXpm libXpm-devel libbzip2 bzip2-devel curl curl-devel openssl openssl-devel[root@pc src]# groupadd www[root@pc src]# useradd -g www www[root@pc src]# passwd www[root@pc src]# wget http://nginx.org/download/nginx-1.9.9.tar.gz[root@pc src]# tar -xzf nginx-1.9.9.tar.gz [root@pc src]# cd nginx-1.9.9/[root@pc nginx-1.9.9]# ./configure --prefix=/usr/local/nginx-1.9.9 --user=www --group=www --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.38[root@pc nginx-1.9.9]# make[root@pc nginx-1.9.9]# make install[root@pc nginx-1.9.9]# cd /usr/local/nginx-1.9.9/conf/[root@pc conf]# vi nginx.conf  user www;  worker_processes 10;  error_log /data/logs/nginx_error.log;  pid    /data/logs/nginx.pid;  http {    include vhost/*.conf;  }[root@pc conf]# mkdir vhost rewrite[root@pc conf]# mkdir -p /data/logs/[root@pc conf]# chown -R www.www /data[root@pc conf]# chmod -R 777 /data[root@pc conf]# /usr/local/nginx-1.9.9/sbin/nginx -tnginx: the configuration file /usr/local/nginx-1.9.9/conf/nginx.conf syntax is oknginx: configuration file /usr/local/nginx-1.9.9/conf/nginx.conf test is successful[root@pc conf]# /usr/local/nginx-1.9.9/sbin/nginx[root@pc nginx-1.9.9]# ps -ef | grep nginxroot   14442   1 0 14:15 ?    00:00:00 nginx: master process /usr/local/nginx-1.9.9/sbin/nginxwww   14457 14442 0 14:24 ?    00:00:00 nginx: worker process      www   14458 14442 0 14:24 ?    00:00:00 nginx: worker process      www   14459 14442 0 14:24 ?    00:00:00 nginx: worker process      www   14460 14442 0 14:24 ?    00:00:00 nginx: worker process      www   14461 14442 0 14:24 ?    00:00:00 nginx: worker process      www   14462 14442 0 14:24 ?    00:00:00 nginx: worker process      www   14463 14442 0 14:24 ?    00:00:00 nginx: worker process      www   14464 14442 0 14:24 ?    00:00:00 nginx: worker process      www   14465 14442 0 14:24 ?    00:00:00 nginx: worker process      www   14466 14442 0 14:24 ?    00:00:00 nginx: worker process      root   14472 1358 0 14:27 pts/0  00:00:00 grep nginx[root@pc conf]# curl http://localhost<!DOCTYPE html><html><head><title>Welcome to nginx!</title><style>  body {    width: 35em;    margin: 0 auto;    font-family: Tahoma, Verdana, Arial, sans-serif;  }</style></head><body><h1>Welcome to nginx!</h1><p>If you see this page, the nginx web server is successfully installed andworking. Further configuration is required.</p><p>For online documentation and support please refer to<a href="http://nginx.org/">nginx.org</a>.<br/>Commercial support is available at<a href="http://nginx.com/">nginx.com</a>.</p><p><em>Thank you for using nginx.</em></p></body></html>

View Code

     开机自启

[root@pc conf]# vi /etc/init.d/nginx#! /bin/shDESC="nginx service"NAME=nginxDAEMON=//usr/local/nginx-1.9.9/sbin/$NAMECONFIGFILE=/usr/local/nginx-1.9.9/conf/$NAME.confPIDFILE=/data/logs/$NAME.pidSCRIPTNAME=/etc/init.d/$NAMEset -e[ -x "$DAEMON" ] || exit 0do_start() {  $DAEMON -c $CONFIGFILE || echo -n "nginx already running"}do_stop() {  kill -INT `cat $PIDFILE` || echo -n "nginx not running"}do_reload() {  kill -HUP `cat $PIDFILE` || echo -n "nginx can't reload"}case "$1" in  start)    echo -n "Starting $DESC: $NAME"    do_start    echo "."    ;;  stop)    echo -n "Stopping $DESC: $NAME"    do_stop    echo "."    ;;  reload|graceful)    echo -n "Reloading $DESC configuration..."    do_reload    echo "."    ;;  restart)    echo -n "Restarting $DESC: $NAME"    do_stop    do_start    echo "."    ;;  *)    echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2    exit 3    ;;esacexit 0[root@pc conf]# chmod 775 /etc/init.d/nginx[root@pc conf]# service nginx restart[root@pc conf]# vi /etc/rc.local  /etc/init.d/nginx start

View Code

三、mysql 5.6.30

     安装

[root@pc ~]# cd /usr/local/src/[root@pc src]# yum -y install bison expat expat-devel ncurses ncurses-devel libaio libaio-devel libc.so.6[root@pc src]# wget https://cmake.org/files/v3.5/cmake-3.5.2.tar.gz[root@pc src]# tar -xzf cmake-3.5.2.tar.gz[root@pc src]# cd cmake-3.5.2[root@pc cmake-3.5.2]# ./configure[root@pc cmake-3.5.2]# make[root@pc cmake-3.5.2]# make install[root@pc cmake-3.5.2]# cd ../[root@pc src]# wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.30.tar.gz[root@pc src]# tar -xzf mysql-5.6.30.tar.gz[root@pc mysql-5.6.30]# groupadd mysql[root@pc mysql-5.6.30]# useradd -g mysql mysql -s /bin/false[root@pc mysql-5.6.30]# mkdir -p /data/mysql[root@pc mysql-5.6.30]# chown -R mysql.mysql /data/mysql[root@pc mysql-5.6.30]# mkdir -p /usr/local/mysql-5.6.30[root@pc mysql-5.6.30]# chown -R mysql.mysql /usr/local/mysql-5.6.30[root@pc mysql-5.6.30]# yum -y install bison-devel ncurses-devel libaio libaio-devel[root@pc mysql-5.6.30]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6.30 \-DMYSQL_DATADIR=/data/mysql \-DSYSCONFDIR=/usr/local/mysql-5.6.30 \-DWITH_MYISAM_STORAGE_ENGINE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_MEMORY_STORAGE_ENGINE=1 \-DWITH_READLINE=1 \-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \-DMYSQL_TCP_PORT=3306 \-DENABLED_LOCAL_INFILE=1 \-DWITH_PARTITION_STORAGE_ENGINE=1 \-DEXTRA_CHARSETS=all \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci[root@pc mysql-5.6.30]# make[root@pc mysql-5.6.30]# make install[root@pc mysql-5.6.30]# chmod +x scripts/mysql_install_db[root@pc mysql-5.6.30]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql-5.6.30 --datadir=/data/mysql --explicit_defaults_for_timestamp[root@pc mysql-5.6.30]# cd /usr/local/mysql-5.6.30/[root@pc mysql-5.6.30]# rm -f /etc/my.cnf ./my.cnf[root@pc mysql-5.6.30]# cp support-files/my-default.cnf ./my.cnf[root@pc mysql-5.6.30]# ln -s /usr/local/mysql-5.6.30/my.cnf /etc/my.cnf[root@pc mysql-5.6.30]# vi my.cnf  basedir=/usr/local/mysql-5.6.30  datadir=/data/mysql  port =3306  pid-file=/data/logs/mysql.pid  log_error = /data/logs/mysql_error.log  slow_query_log = 1  long_query_time = 1  slow_query_log_file = /data/logs/mysql_slow.log[root@pc mysql-5.6.30]# cp ./support-files/mysql.server /etc/init.d/mysql[root@pc mysql-5.6.30]# chmod 775 /etc/init.d/mysql[root@pc mysql-5.6.30]# /etc/init.d/mysql startStarting MySQL. SUCCESS!

View Code

    初始化密码,允许远程连接及开机自启

[root@pc mysql-5.6.30]# vi /etc/profile  export PATH=$PATH:/usr/local/mysql-5.6.30/bin[root@pc mysql-5.6.30]# source /etc/profile[root@pc mysql-5.6.30]# mysql -u root -pEnter password: #密码为空mysql> SET PASSWORD = PASSWORD('123456');Query OK, 0 rows affected (0.00 sec)mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;Query OK, 0 rows affected (0.00 sec)mysql> DELETE FROM user WHERE Host!='%';Query OK, 5 rows affected (0.00 sec)mysql> FLUSH PRIVILEGES;Query OK, 0 rows affected (0.00 sec)mysql> exitBye[root@pc mysql-5.6.30]# vi /etc/sysconfig/iptables  -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT[root@pc mysql-5.6.30]# service iptables restart[root@pc mysql-5.6.30]# vi /etc/rc.local  /etc/init.d/mysql start

View Code

四、php 5.6.21

     安装

[root@pc ~]# cd /usr/local/src/[root@pc src]# wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz[root@pc src]# tar -xzf libmcrypt-2.5.7.tar.gz[root@pc src]# cd libmcrypt-2.5.7[root@pc libmcrypt-2.5.7]# ./configure[root@pc libmcrypt-2.5.7]# make[root@pc libmcrypt-2.5.7]# make install[root@pc libmcrypt-2.5.7]# ldconfig   [root@pc libmcrypt-2.5.7]# cd libltdl/[root@pc libltdl]# ./configure --enable-ltdl-install[root@pc libltdl]# make[root@pc libltdl]# make install[root@pc libltdl]# cd ../../[root@pc src]# wget http://jaist.dl.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz[root@pc src]# tar -zxf mhash-0.9.9.9.tar.gz[root@pc src]# cd mhash-0.9.9.9[root@pc mhash-0.9.9.9]# ./configure[root@pc mhash-0.9.9.9]# make[root@pc mhash-0.9.9.9]# make install[root@pc mhash-0.9.9.9]# cd ../[root@pc src]# wget http://jaist.dl.sourceforge.net/project/lnmpaio/web/mcrypt/mcrypt-2.6.8.tar.gz[root@pc src]# tar -xzf mcrypt-2.6.8.tar.gz[root@pc src]# cd mcrypt-2.6.8[root@pc mcrypt-2.6.8]# ./configure LD_LIBRARY_PATH=/usr/local/lib[root@pc mcrypt-2.6.8]# make[root@pc mcrypt-2.6.8]# make install[root@pc mcrypt-2.6.8]# cd ../[root@pc src]# wget http://mirror.centos.org/centos/6/os/x86_64/Packages/libzip-0.9-3.1.el6.x86_64.rpm[root@pc src]# rpm -ivh libzip-0.9-3.1.el6.x86_64.rpm[root@pc src]# wget http://cn2.php.net/distributions/php-5.6.21.tar.gz[root@pc src]# tar -xzf php-5.6.21.tar.gz[root@pc src]# cd php-5.6.21[root@pc php-5.6.21]# ./configure \--prefix=/usr/local/php-5.6.21 \--with-config-file-path=/usr/local/php-5.6.21/etc \--enable-fpm --with-fpm-user=www --with-fpm-group=www \--enable-mysqlnd \--with-mysqli=/usr/local/mysql-5.6.30/bin/mysql_config \--with-pdo-mysql=/usr/local/mysql-5.6.30/bin/mysql_config \--with-libdir \--enable-zip \--with-zlib \--with-zlib-dir \--with-curl \--with-mcrypt \--with-gd \--enable-gd-native-ttf \--with-openssl \--with-mhash \--with---with-jpeg-dir \--with-png-dir \--with-xpm-dir \--with-freetype-dir \--enable-shared \--enable---disable-rpath \--enable-bcmath \--enable-shmop \--enable-sysvsem \--enable-inline-optimization \--enable-mbregex \--enable-mbstring \--enable-pcntl \--enable-sockets \--enable-soap...configure: error: Don't know how to define struct flock on this system, set --enable-opcache=no[root@pc php-5.6.21]# cat /etc/ld.so.conf.d/mysql-x86_64.confcat: /etc/ld.so.conf.d/mysql-x86_64.conf: No such file or directory[root@pc php-5.6.21]# echo '/usr/local/lib' >> /etc/ld.so.conf.d/local.conf[root@pc php-5.6.21]# echo '/usr/local/lib64' >> /etc/ld.so.conf.d/local.conf[root@pc php-5.6.21]# cat /etc/ld.so.conf.d/mysql-x86_64.conf/usr/lib64/mysql[root@pc php-5.6.21]# echo '/usr/local/mysql-5.6.30/lib' >> /etc/ld.so.conf.d/mysql-x86_64.conf[root@pc php-5.6.21]# ldconfig[root@pc php-5.6.21]# ./configure --prefix=/usr/local/php-5.6.21 --with-config-file-path=/usr/local/php-5.6.21/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-mysqlnd --with-mysqli=/usr/local/mysql-5.6.30/bin/mysql_config --with-pdo-mysql=/usr/local/mysql-5.6.30/bin/mysql_config --with-libdir --enable-zip --with-zlib --with-zlib-dir --with-curl --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --with-dir --with-png-dir --with-xpm-dir --with-freetype-dir --enable-shared --enable-soap[root@pc php-5.6.21]# make -j4[root@pc php-5.6.21]# make install[root@pc php-5.6.21]# cd /usr/local/php-5.6.21/etc[root@pc etc]# cp /usr/local/src/php-5.6.21/php.ini-development php.ini[root@pc etc]# cp php-fpm.conf.default php-fpm.conf[root@pc etc]# vi php-fpm.conf  pid = /data/logs/php-fpm.pid  error_log = /data/logs/php-fpm.log  pm.max_children = 40  pm.start_servers = 20  pm.min_spare_servers = 5  pm.max_spare_servers = 35[root@pc etc]# vi php.ini  date.timezone = 'PRC'  error_log = /data/logs/php_errors.log[root@pc etc]# /usr/local/php-5.6.21/sbin/php-fpm[root@pc etc]# ps -ef | grep fpmroot   9516   1 0 15:52 ?    00:00:00 php-fpm: master process (/usr/local/php-5.6.21/etc/php-fpm.conf)www    9517 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9518 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9519 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9520 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9521 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9522 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9523 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9524 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9525 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9526 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9527 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9528 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9529 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9530 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9531 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9532 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9533 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9534 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9535 9516 0 15:52 ?    00:00:00 php-fpm: pool www         www    9536 9516 0 15:52 ?    00:00:00 php-fpm: pool www         root   9545 1666 0 15:54 pts/0  00:00:00 grep fpm[root@pc etc]# /usr/local/php-5.6.21/bin/php -vPHP 5.6.21 (cli) (built: May 7 2016 15:29:00) Copyright (c) 1997-2016 The PHP GroupZend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

View Code

     开机自启

[root@pc etc]# vi /etc/init.d/php-fpm#! /bin/shphp_fpm_BIN=/usr/local/php-5.6.21/sbin/php-fpmphp_fpm_CONF=/usr/local/php-5.6.21/etc/php-fpm.confphp_fpm_PID=/data/logs/php-fpm.pidphp_fpm_INI=/usr/local/php-5.6.21/etc/php.iniphp_opts="--fpm-config $php_fpm_CONF --pid $php_fpm_PID -c $php_fpm_INI"wait_for_pid () {  try=0  while test $try -lt 35 ; do    case "$1" in      'created')      if [ -f "$2" ] ; then        try=''        break      fi      ;;      'removed')      if [ ! -f "$2" ] ; then        try=''        break      fi      ;;    esac    echo -n .    try=`expr $try + 1`    sleep 1  done}case "$1" in  start)    echo -n "Starting php-fpm "    $php_fpm_BIN --daemonize $php_opts    if [ "$?" != 0 ] ; then      echo " failed"      exit 1    fi    wait_for_pid created $php_fpm_PID    if [ -n "$try" ] ; then      echo " failed"      exit 1    else      echo " done"    fi  ;;  stop)    echo -n "Gracefully shutting down php-fpm "    if [ ! -r $php_fpm_PID ] ; then      echo "warning, no pid file found - php-fpm is not running ?"      exit 1    fi    kill -QUIT `cat $php_fpm_PID`    wait_for_pid removed $php_fpm_PID    if [ -n "$try" ] ; then      echo " failed. Use force-quit"      exit 1    else      echo " done"    fi  ;;  status)    if [ ! -r $php_fpm_PID ] ; then      echo "php-fpm is stopped"      exit 0    fi    PID=`cat $php_fpm_PID`    if ps -p $PID | grep -q $PID; then      echo "php-fpm (pid $PID) is running..."    else      echo "php-fpm dead but pid file exists"    fi  ;;  force-quit)    echo -n "Terminating php-fpm "    if [ ! -r $php_fpm_PID ] ; then      echo "warning, no pid file found - php-fpm is not running ?"      exit 1    fi    kill -TERM `cat $php_fpm_PID`    wait_for_pid removed $php_fpm_PID    if [ -n "$try" ] ; then      echo " failed"      exit 1    else      echo " done"    fi  ;;  restart)    $0 stop    $0 start  ;;  reload)    echo -n "Reload service php-fpm "    if [ ! -r $php_fpm_PID ] ; then      echo "warning, no pid file found - php-fpm is not running ?"      exit 1    fi    kill -USR2 `cat $php_fpm_PID`    echo " done"  ;;  *)    echo "Usage: $0 {start|stop|force-quit|restart|reload|status}"    exit 1  ;;esac[root@pc etc]# chmod 775 /etc/init.d/php-fpm[root@pc etc]# service php-fpm restartGracefully shutting down php-fpm . doneStarting php-fpm done[root@pc etc]# vi /etc/sysconfig/iptables  -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT[root@pc etc]# service iptables restart[root@pc etc]# vi /etc/rc.local  /etc/init.d/php-fpm start

View Code

五、vhost

[root@pc etc]# cd /data/[root@pc data]# mkdir -p /data/www/test[root@pc data]# vi /data/www/test/index.php  <?php  phpinfo();[root@pc data]# chown -R www.www /data/www[root@pc data]# vi /usr/local/nginx-1.9.9/conf/vhost/test.confserver{  listen 80;  server_name www.test.dev;  index index.html index.php;  root /data/www/test;  location ~ .*\.php?$  {    fastcgi_pass  127.0.0.1:9000;    fastcgi_index index.php;    include fastcgi_params;  }  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$  {    expires   30d;    access_log  off;  }  location ~ .*\.(js|css)?$  {    expires   12h;  }    #include rewrite/test.conf;  #access_log /data/logs/nginx.test.access.log access;}[root@pc data]# vi /usr/local/nginx-1.9.9/conf/fastcgi_params  fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;[root@pc data]# service nginx restart[root@pc data]# echo '127.0.0.1  www.test.dev' >> /etc/hosts[root@pc data]# curl http://www.test.dev/index.php | grep 'PHP Version 5.6.21'

View Code

六、extension

[root@pc ~]# cd /usr/local/src/[root@pc src]# yum -y install git[root@pc src]# git clone --depth=1 git://github.com/phalcon/cphalcon.git[root@pc src]# cd cphalcon/build/[root@pc build]# vi ./install  #phpize && ./configure --enable-phalcon && make && make install && echo -e "\nThanks for compiling Phalcon!\nBuild succeed: Please restart your web server to complete the installation"  /usr/local/php-5.6.21/bin/phpize && ./configure --enable-phalcon --with-php-config=/usr/local/php-5.6.21/bin/php-config && make && make install && echo -e "\nThanks for compiling Phalcon!\nBuild succeed: Please restart your web server to complete the installation"[root@pc build]# ./install[root@pc build]# vi /usr/local/php-5.6.21/etc/php.ini  extension_dir = "/usr/local/php-5.6.21/lib/php/extensions/no-debug-non-zts-20131226/"  extension=phalcon.so[root@pc build]# service php-fpm restart[root@pc build]# /usr/local/php-5.6.21/bin/php -i |grep phalcon[root@pc build]# cd ../../[root@pc src]# wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz[root@pc src]# tar -xzf libmemcached-1.0.18.tar.gz[root@pc src]# cd libmemcached-1.0.18[root@pc libmemcached-1.0.18]# ./configure --prefix=/usr/local/libmemcached-1.0.18[root@pc libmemcached-1.0.18]# make[root@pc libmemcached-1.0.18]# make install[root@pc libmemcached-1.0.18]# cd ../[root@pc src]# wget http://pecl.php.net/get/memcached-2.2.0.tgz[root@pc src]# tar -xzf memcached-2.2.0.tgz [root@pc src]# cd memcached-2.2.0[root@pc memcached-2.2.0]# /usr/local/php-5.6.21/bin/phpize[root@pc memcached-2.2.0]# ./configure --enable-memcached \--with-php-config=/usr/local/php-5.6.21/bin/php-config \--with-libmemcached-dir=/usr/local/libmemcached-1.0.18...checking sasl/sasl.h usability... nochecking sasl/sasl.h presence... nochecking for sasl/sasl.h... noconfigure: error: no, sasl.h is not available. Run configure with --disable-memcached-sasl to disable this check[root@pc memcached-2.2.0]# yum -y install cyrus-sasl-devel[root@pc memcached-2.2.0]# /usr/local/php-5.6.21/bin/phpize[root@pc memcached-2.2.0]# ./configure --enable-memcached --disable-memcached-sasl \--with-php-config=/usr/local/php-5.6.21/bin/php-config \--with-libmemcached-dir=/usr/local/libmemcached-1.0.18[root@pc memcached-2.2.0]# make[root@pc memcached-2.2.0]# make install[root@pc memcached-2.2.0]# vi /usr/local/php-5.6.21/etc/php.ini  extension=memcached.so[root@pc memcached-2.2.0]# service php-fpm restart[root@pc memcached-2.2.0]# /usr/local/php-5.6.21/bin/php -i |grep memcached[root@pc memcached-2.2.0]# cd ../[root@pc src]# wget http://pecl.php.net/get/memcache-2.2.7.tgz[root@pc src]# tar -xzf memcache-2.2.7.tgz[root@pc src]# cd memcache-2.2.7[root@pc memcache-2.2.7]# /usr/local/php-5.6.21/bin/phpize[root@pc memcache-2.2.7]# ./configure --with-php-config=/usr/local/php-5.6.21/bin/php-config[root@pc memcache-2.2.7]# make[root@pc memcache-2.2.7]# make install[root@pc memcache-2.2.7]# vi /usr/local/php-5.6.21/etc/php.ini  extension=memcache.so[root@pc memcache-2.2.7]# service php-fpm restart[root@pc memcache-2.2.7]# /usr/local/php-5.6.21/bin/php -i |grep memcache

View Code

七、memcached service

[root@pc ~]# cd /usr/local/src/[root@pc src]# wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz[root@pc src]# tar -xzf libevent-2.0.21-stable.tar.gz [root@pc src]# cd libevent-2.0.21-stable[root@pc libevent-2.0.21-stable]# ./configure -prefix=/usr[root@pc libevent-2.0.21-stable]# make[root@pc libevent-2.0.21-stable]# make install[root@pc libevent-2.0.21-stable]# ls -al /usr/lib | grep libevent[root@pc libevent-2.0.21-stable]# cd ../[root@pc src]# wget http://memcached.org/files/memcached-1.4.25.tar.gz[root@pc src]# tar -xzf memcached-1.4.25.tar.gz[root@pc src]# cd memcached-1.4.25[root@pc memcached-1.4.25]# ./configure -with-libevent=/usr[root@pc memcached-1.4.25]# makeCDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /usr/local/src/memcached-1.4.25/missing aclocal-1.14 /usr/local/src/memcached-1.4.25/missing: line 81: aclocal-1.14: command not foundWARNING: 'aclocal-1.14' is missing on your system.     You should only need it if you modified 'acinclude.m4' or     'configure.ac' or m4 files included by 'configure.ac'.     The 'aclocal' program is part of the GNU Automake package:     <http://www.gnu.org/software/automake>     It also requires GNU Autoconf, GNU m4 and Perl in order to run:     <http://www.gnu.org/software/autoconf>     <http://www.gnu.org/software/m4/>     <http://www.perl.org/>make: *** [aclocal.m4] Error 127[root@pc memcached-1.4.25]# autoreconf -ivf[root@pc memcached-1.4.25]# make[root@pc memcached-1.4.25]# make install[root@pc memcached-1.4.25]# ls -al /usr/local/bin/mem*[root@pc memcached-1.4.25]# /usr/local/bin/memcached -d -m 10 -u root -l 127.0.0.1 -p 11211 -c 256 -P /data/logs/memcached.pid[root@pc memcached-1.4.25]# vi /etc/init.d/memcached#! /bin/shstart(){  echo -n $"Starting memcached"  /usr/local/bin/memcached -d -m 10 -u root -l 127.0.0.1 -p 11211 -c 256 -P /data/logs/memcached.pid  echo -e '\n'}stop(){  echo -n $"Shutting down memcached"  kill `cat /data/logs/memcached.pid`  echo -e '\n'}[ -f /usr/local/bin/memcached ] || exit 0case "$1" in  start)    start    ;;  stop)    stop    ;;  restart|reload)    stop    start    ;;  condrestart)    stop    start    ;;  *)  echo $"Usage: $0 {start|stop|restart|reload|condrestart}"  exit 1esacexit 0[root@pc memcached-1.4.25]# chmod 755 /etc/init.d/memcached[root@pc memcached-1.4.25]# service memcached restart[root@pc memcached-1.4.25]# vi /etc/rc.local  /etc/init.d/memcached start

View Code