Linux 安装基于(PHP5.5)memcache扩展
需安装php7版本的参考:http://www.yiichina.com/topic/6636 yii2 下使用memcached(非memcache)
http://www.yiichina.com/topic/6635 php7.0下 安装 memcached 和 php扩展memcached
---------------------------------------------------------------
一. memcache服务器端
安装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选项是启动一个守护进程, |
二 . 安装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扩展的更多相关文章
- Centos安装Memcached和(Nginx)Memcache扩展详细教程
下载memadmin,下载地址:http://www.junopen.com/memadmin/ 并在IIS新建站点. 测试地址:http://wap.yousawang.com/mem , 1.重启 ...
- 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 ...
- phpstudy 安装memcached服务和memcache扩展
memcached安装步骤: 首先,将下载好的memcahed解压到某个文件目录下,例如 C:\memcached 然后,在cmd里,输入"C:\memcached\memcached.ex ...
- memcached的安装以及php两个扩展软件安装(memcache、memcached)
百度云安装包:http://pan.baidu.com/s/1pKZeDwn k3ap 1.安装memcached Memcached是基于libevent的事件处理,所以它的安装依赖libeven ...
- linux下PHP5.5的安装【oci8,pdo-oci,memcache,Zend OPCache扩展】
最近一段时间学习了一下PHP,用CI做了一个小项目,为了开发方便,本地windows下使用了集成环境XAMPP,不过当把项目部署到linux上时,确实遇到了很多问题,下面把我在linux上安装php的 ...
- linux上安装php7 memcache扩展 和 安装服务端memcached
linux上安装memcached不算太困难.唯一让本人感到困难的是 php7的memcache扩展安装.真的蛋疼! 先说安装服务端 memcached 1. 首先安装Libevent事件触发管理器. ...
- linux centos 安装php的memcache扩展
一.centos6.5 yum安装php的memcache扩展 搜索memcache yum search memcache 有了,现在可以安装了 yum -y install memcached m ...
- linux安装memcached和php的memcache扩展 (已使用)
所需软件libevent-1.4.6-stable.tar.gz (http://monkey.org/~provos/libevent/)memcache-2.2.3.tgz (http://pec ...
- linux下给php安装memcached及memcache扩展(转)
http://kimi.it/257.html (另外的方法)linux安装memcached及memcache扩展一.安装libevent函数库下载地址:http://libevent.org默认被 ...
随机推荐
- 篇一:JSON格式转换(一)
JSON.parse()和JSON.stringify()的使用 1.JSON.parse() 用于从一个字符串中解析出json 对象.例如 var str='{"name":&q ...
- 【USACO 2.3】Zero Sum(dfs)
按字典序输出所有在123..n之间插入'+','-',' '结果为0的表达式.. http://train.usaco.org/usacoprob2?a=jUh88pMwCSQ&S=zeros ...
- 【bzoj2281】 Sdoi2011—黑白棋
http://www.lydsy.com/JudgeOnline/problem.php?id=2281 (题目链接) 题意 一个1*n的棋盘,棋盘上一个隔一个的放着个黑棋和白棋,最左端是白棋,最右端 ...
- CommonJS,AMD,CMD区别
学得比较晕,再次看commonjs,amd, cmd时好像还是没完全弄清楚,今天再整理一下: commonjs是用在服务器端的,同步的,如nodejs amd, cmd是用在浏览器端的,异步的,如re ...
- Java 枚举类的基本使用
枚举(enum)类型是Java 5新增的特性,它是一种新的类型,允许用常量来表示特定的数据片断,而且全部都以类型安全的形式来表示. 1.常量的使用 在JDK1.5之前,我们定义常量都是:p ...
- Linux(Centos6.5)用户名密码
用户列表文件:/etc/passwd用户组列表文件:/etc/group 查看系统中有哪些用户:cut -d : -f 1 /etc/passwd查看可以登录系统的用户:cat /etc/passwd ...
- WeakReference
https://msdn.microsoft.com/en-us/library/ms404247(v=vs.110).aspx http://stackoverflow.com/questions/ ...
- 简单的STM32 汇编程序—闪烁LED
要移植操作系统,汇编是道不得不跨过去的坎.所以承接上篇的思路,我准备用汇编写一个简单的闪烁LED灯的程式.以此练习汇编,为操作系统做准备. 第一步,还是和上篇一样,建立一个空的文件夹. 第二步,因为是 ...
- ASCII码表
ASCII码表 ASCII码大致可以分作三部分組成. 第一部分是:ASCII码非打印控制字符: 第二部分是:ASCII码打印字符: 第三部分是:扩展ASCII码打印字符. 第一部分:ASCII非打印控 ...
- tyvj1194 划分大理石
描述 有价值分别为1..6的大理石各a[1..6]块,现要将它们分成两部分,使得两部分价值之和相等,问是否可以实现.其中大理石的总数不超过20000. 输入格式 有多组数据!所以可能有多行如果有0 ...