环境:Centos 6.6
PHP version:5.5.38
memcached version:1.4.33
官网:https://memcached.org/
Memcached Githup:https://github.com/memcached/memcached/wiki
安装libevent:
[[email protected] ~]# ntpdate time.windows.com
[[email protected] ~]# wget https://cloud.github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
[[email protected] ~]# tar -zxf libevent-2.0.21-stable.tar.gz
[[email protected] ~]# cd libevent-2.0.21-stable
[[email protected] libevent-2.0.21-stable]# ./configure --prefix=/usr/local/libevent
[[email protected] libevent-2.0.21-stable]# make && make install
[[email protected] ~]# ls /usr/local/libevent/
bin include lib
[[email protected] ~]#
安装Memcached:
[[email protected] ~]# wget https://memcached.org/files/memcached-1.4.33.tar.gz
[[email protected] ~]# tar -zxf memcached-1.4.33.tar.gz
[[email protected] ~]# cd memcached-1.4.33
[[email protected] memcached-1.4.33]# ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent/
[[email protected] memcached-1.4.33]# make && make install
[[email protected] ~]# ls /usr/local/memcached/
bin include share
[[email protected] ~]#
安装php扩展模块memcache:
[[email protected] ~]# yum -y install php55w php55w-cli php55w-common php55w-devel php55w-gd php55w-odbc php55w-mysql php55w-fpm nginx
[[email protected] ~]# wget http://nchc.dl.sourceforge.net/project/libpng/zlib/1.2.8/zlib-1.2.8.tar.gz
[[email protected] ~]# tar -zxf zlib-1.2.8.tar.gz
[[email protected] ~]# cd zlib-1.2.8
[[email protected] zlib-1.2.8]# ./configure --prefix=/usr/local/zlib
[[email protected] zlib-1.2.8]# make && make install
[[email protected] ~]# wget http://pecl.php.net/get/memcache-2.2.7.tgz
[[email protected] ~]# tar -xf memcache-2.2.7.tgz
[[email protected] ~]# cd memcache-2.2.7
[[email protected] memcache-2.2.7]# phpize //如果没有安装phpize,安装php55w-devel
Configuring for:
PHP Api Version: 20121113
Zend Module Api No: 20121212
Zend Extension Api No: 220121212
[[email protected] memcache-2.2.7]#
[[email protected] memcache-2.2.7]# ./configure --enable-memcache --with-php-config=/usr/bin/php-config --with-zlib-dir=/usr/local/zlib/
[[email protected] memcache-2.2.7]# make && make install
····
Installing shared extensions: /usr/lib64/php/modules/
[[email protected] memcache-2.2.7]#
[[email protected] memcache-2.2.7]# make test
在php.ini文件,在zend之前加入如下代码:
[[email protected] ~]# head -352 /etc/php.ini | tail -3
[memcache]
extension_dir = "/usr/lib64/php/modules/"
extension = memcache.so
[[email protected] ~]#

[[email protected] ~]# cd /usr/share/nginx/html
[[email protected] html]# cat info.php
<?php
phpinfo()
?>
[[email protected] html]#
[[email protected] ~]# /etc/init.d/php-fpm start
[[email protected] ~]# /etc/init.d/nginx start
[[email protected] ~]# chkconfig --add php-fpm
[[email protected] ~]# chkconfig --add nginx
[[email protected] ~]# chkconfig php-fpm on
[[email protected] ~]# chkconfig nginx on
//启动Memcached
[[email protected] ~]# /usr/local/memcached/bin/memcached -d -u root -m 512 -p 11211 127.0.0.1 -c 10240 -P /usr/local/memcached/memcached.pid
//指定启动线程数,默认启动4个线程
启动参数说明:
-d 选项是启动一个守护进程,
-m 是分配给Memcache使用的内存数量,单位是MB,默认64MB
-M return error on memory exhausted (rather than removing items)
-u 是运行Memcache的用户,如果当前为root 的话,需要使用此参数指定用户。
-l 是监听的服务器IP地址,默认为所有网卡。
-p 是设置Memcache的TCP监听的端口,最好是1024以上的端口
-c 选项是最大运行的并发连接数,默认是1024
-P 是设置保存Memcache的pid文件
[[email protected] ~]# php -m | grep memcache
memcache
[[email protected] ~]#
Nginx配置:
[[email protected] ~]# cat /etc/nginx/conf.d/default.conf
server {
listen 80;
server_name 192.168.70.188;
charset utf8;
access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
}
location ~ ^(.+.php)(.*)$ {
root /usr/share/nginx/html;
fastcgi_split_path_info ^(.+.php)(.*)$;
include fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
[[email protected] ~]#
[[email protected] ~]# cat /etc/nginx/fastcgi.conf
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;
[[email protected] ~]#
成功。
转载于:https://blog.51cto.com/yfshare/1874168