需安装php7版本的参考:http://www.yiichina.com/topic/6636  yii2 下使用memcached(非memcache) 

http://www.yiichina.com/topic/6635      php7.0下 安装 memcached 和 php扩展memcached 

---------------------------------------------------------------

一. memcache服务器端

下载地址:http://memcached.org/

安装memcached,同时需要安装中指定libevent的安装位置

tar zxvf memcached-1.2.0.tar.gz
cd memcached-1.2.0.tar
./configure –with-libevent=/usr
make
make install

或直接yum apt-get安装

启动服务 :

./memcached -d -m 10    -u root
memcached -d -m  -p  -u root

参数说明

-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
-u是运行Memcache的用户,我这里是root,
-l是监听的服务器IP地址,
-p是设置Memcache监听的端口,
-c选项是最大运行的并发连接数,默认是1024,
-P是设置保存Memcache的pid文件,

二 . 安装php5.5 memcache扩展

这里版本为php5.5.25

下载地址 http://pecl.php.net/package/memcache

tar vxzf memcache-2.2.1.tgz
cd memcache-2.2.1
/usr/local/php/bin/phpize
./configure –enable-memcache –with-php-config=/usr/local/php/bin/php-config
make
make install

问题来了,报错:

[root@iaaa memcache-2.2.1]# ./configure –enable-memcache –with-php-config=/usr/local/php/bin/php-config
configure: WARNING: you should use --build, --host, --target
configure: WARNING: invalid host type: –enable-memcache
configure: error: invalid variable name: `–with-php-config'

解决办法: 这行代码需要你手动输入,直接复制粘贴就会出现这种错误,   参考来自:http://www.wdlinux.cn/bbs/thread-7007-1-1.html

安装完后会有类似这样的提示

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/

然后修改php.ini, 添加extension

extension=memcache.so

查找php.ini  执行phpinfo()

修改完成后重启nginx

service  nginx restart

问题来了:

重启nginx 后phpinfo() 显示没有加载memcache模块

google发现要需要 php-fpm 来重新加载配置文件php.ini

然后呢安装网上说的

/php-fpm 还有其它参数 ,包括start|stop | quit | restart | reload | logrotate 使用 PHP-FPM 来控制 PHP-CGI 的 FastCGI 进程

--start   启动 PHP 的 fastcgi 进程
--stop 强制终止 PHP 的 fastcgi 进程
--quit 平滑终止 php 的 fastcgi 进程
--restart 重启 php 的 fastcgi 进程
--reload 平滑重新加载 php 的 php.ini
--logrotate 重新启用 log 文件

php5.5的php-fpm 参数

Usage: php-fpm [-n] [-e] [-h] [-i] [-m] [-v] [-t] [-p <prefix>] [-g <pid>] [-c <file>] [-d foo[=bar]] [-y <file>] [-D] [-F]
-c <path>|<file> Look for php.ini file in this directory
-n No php.ini file will be used
-d foo[=bar] Define INI entry foo with value 'bar'
-e Generate extended information for debugger/profiler
-h This help
-i PHP information
-m Show compiled in modules
-v Version number
-p, --prefix <dir>
Specify alternative prefix path to FastCGI process manager (default: /usr/local/php).
-g, --pid <file>
Specify the PID file location.
-y, --fpm-config <file>
Specify alternative path to FastCGI process manager config file.
-t, --test Test FPM configuration and exit
-D, --daemonize force to run in background, and ignore daemonize option from config file
-F, --nodaemonize
force to stay in foreground, and ignore daemonize option from config file
-R, --allow-to-run-as-root
Allow pool to run as root (disabled by default)

所以应该:

service php-fpm stop 
./php-fpm -c /usr/local/php/etc/php2.ini

完成后在看phpinif()

显示的memcache模块:

windows中memcached 启动服务:

memcache 未授权访问漏洞

修复方案:

因memcache无权限控制功能,所以需要用户对访问来源进行限制。

方案一:

如果memcache没有在外网开放的必要,可在memcached启动的时候指定绑定的ip地址为 127.0.0.1。例如:

memcached -d -m  -u root -l 127.0.0.1 -l 192.168.1.102 -p  -c  -P /tmp/memcached.pid

其中 -l 参数指定为地址, 可以指定多个地址用逗号分开也可以使用- l多次

方案二:(注意:请谨慎配置iptables规则)

如果memcache服务需要对外提供服务,则可以通过iptables进行访问控制。

iptables -A INPUT -p tcp -s 192.168.0.2 --dport  -j ACCEPT

上述规则的意思是只允许192.168.0.2这个ip对11211端口进行访问。

参考:https://help.aliyun.com/knowledge_detail/37553.html

Linux 安装基于(PHP5.5)memcache扩展的更多相关文章

  1. Centos安装Memcached和(Nginx)Memcache扩展详细教程

    下载memadmin,下载地址:http://www.junopen.com/memadmin/ 并在IIS新建站点. 测试地址:http://wap.yousawang.com/mem , 1.重启 ...

  2. Centos7 编译安装 Nginx PHP Mariadb Memcache扩展 ZendOpcache扩展 (实测 笔记 Centos 7.0 + Mariadb 10.1.9 + Nginx 1.9.9 + PHP 5.5.30)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1503-01.iso 安装步骤: 1.准备 1.1 ...

  3. phpstudy 安装memcached服务和memcache扩展

    memcached安装步骤: 首先,将下载好的memcahed解压到某个文件目录下,例如 C:\memcached 然后,在cmd里,输入"C:\memcached\memcached.ex ...

  4. memcached的安装以及php两个扩展软件安装(memcache、memcached)

    百度云安装包:http://pan.baidu.com/s/1pKZeDwn  k3ap 1.安装memcached Memcached是基于libevent的事件处理,所以它的安装依赖libeven ...

  5. linux下PHP5.5的安装【oci8,pdo-oci,memcache,Zend OPCache扩展】

    最近一段时间学习了一下PHP,用CI做了一个小项目,为了开发方便,本地windows下使用了集成环境XAMPP,不过当把项目部署到linux上时,确实遇到了很多问题,下面把我在linux上安装php的 ...

  6. linux上安装php7 memcache扩展 和 安装服务端memcached

    linux上安装memcached不算太困难.唯一让本人感到困难的是 php7的memcache扩展安装.真的蛋疼! 先说安装服务端 memcached 1. 首先安装Libevent事件触发管理器. ...

  7. linux centos 安装php的memcache扩展

    一.centos6.5 yum安装php的memcache扩展 搜索memcache yum search memcache 有了,现在可以安装了 yum -y install memcached m ...

  8. linux安装memcached和php的memcache扩展 (已使用)

    所需软件libevent-1.4.6-stable.tar.gz (http://monkey.org/~provos/libevent/)memcache-2.2.3.tgz (http://pec ...

  9. linux下给php安装memcached及memcache扩展(转)

    http://kimi.it/257.html (另外的方法)linux安装memcached及memcache扩展一.安装libevent函数库下载地址:http://libevent.org默认被 ...

随机推荐

  1. 自己积累的一些Emgu CV代码(主要有图片格式转换,图片裁剪,图片翻转,图片旋转和图片平移等功能)

    using System; using System.Drawing; using Emgu.CV; using Emgu.CV.CvEnum; using Emgu.CV.Structure; na ...

  2. 有关bat的一些代码

    1.if语句    @echo off     if exist E:\aa.dat dir C: >> E:\ff.txt       pause     type E:\ff.txt ...

  3. 迅雷9、迅雷极速版之迅雷P2P加速:流量吸血鬼?为什么你装了迅雷之后电脑会感觉很卡很卡?

    原文地址:http://www.whosmall.com/post/90 关闭极速版迅雷ThunderPlatform.exe进程 ThunderPlatform.exe目的:利用P2P技术进行用户间 ...

  4. 使用 Eclipse 调试 Java 程序的 10 个技巧

    你应该看过一些如<关于调试的N件事>这类很流行的帖子 .假设我每天花费1小时在调试我的应用程序上的话,那累积起来的话也是很大量的时间.由于这个原因,用这些时间来重视并了解所有使我们调试更方 ...

  5. PHP5.6启动失败

    PHP编译安装完毕,启动失败,提示 1 [23-Jun-2014 12:27:02] ERROR: failed to open configuration file '/usr/local/php/ ...

  6. 查看修改Linux时区和时间

    查看/修改Linux时区和时间 一.时区 1. 查看当前时区 date -R 2. 修改设置时区 方法(1) tzselect 方法(2) 仅限于RedHat Linux 和 CentOS timec ...

  7. [UML]UML系列——类图class的泛化关系

    系列文章       [UML]UML系列——用例图Use Case       [UML]UML系列——用例图中的各种关系(include.extend)       [UML]UML系列——类图C ...

  8. 2015.4.20 Canvas Jquery 移动端 JavaScript

    1.分享效果:弹窗Canvas渲染大图.   2.进度条中表现进度百分比的数值d%,根据进度的增长“字体颜色”为了表示清晰也随着变化 解决方法:参考Demo.   3.输入框保持查询参数,结果列表局部 ...

  9. SQL中SET和SELECT赋值的区别

    最近的项目写的SQL比较多,经常会用到对变量赋值,而我使用SET和SELECT都会达到效果. 那就有些迷惑,这两者有什么区别呢?什么时候哪该哪个呢? 经过网上的查询,及个人练习,总结两者有以下几点主要 ...

  10. 公众平台调整SSL安全策略 不再支持SSLv2、SSLv3版本

    昨天夜间,微信团队发布重要安全策略调整,将关闭掉SSLv2.SSLv3版本支持,不再支持部分使用SSLv2. SSLv3或更低版本的客户端调用.请仍在使用这些版本的开发者于11月30日前尽快修复升级. ...