centos6+nginx+php+mysql+memcached+wordpress
centos6+nginx+php+mysql+memcached+wordpress 搭建步骤(1)
LNMP 平台搭建:
请参考:http://www.cnblogs.com/ligao/p/6125710.html
1,安装 memcached:
memcache 是 pecl 扩展库版本,原生支持 php,出现更早,是老前辈;
memcached 是 libmemcached 版本,出现较后,是新一代,因此也更加完善,推荐使用。
(1)yum 安装方式:
yum -y install memcached
#启动 memcached
service memcached start
#开机启动
chkconfig memcached on
(2)编译安装方式:
1,安装环境依赖包:yum install cyrus-sasl-devel gcc+ gcc-c++ gcc-devel
2,#从官方下载最新源码包
wget http://memcached.org/files/memcached-1.4.25.tar.gz
#解压开始编译安装
tar xzvf memcached-1.4.15.tar.gz
cd memcached-1.4.15
./configure –prefix=/usr/local/memcached
make && make install
(3)设置环境变量
ln -s /usr/local/memcached/bin/memcached /usr/bin/memcached
cp scripts/memcached.sysv /etc/init.d/memcached
(4)改为监听 127.0.0.1,并关闭 UDP 连接方式,若为远程服务调用或不需要的话请跳过此行
sed -i ‘s/OPTIONS=””/OPTIONS=”-l 127.0.0.1 -U 0″/g’ /etc/init.d/memcached
sed -i ‘s@chown@#chown@’ /etc/init.d/memcached
sed -i ‘s@/var/run/memcached/memcached.pid@/var/run/memcached.pid@’ /etc/init.d/memcached
(5)启动并设置开机服务
chmod +x /etc/init.d/memcached
service memcached start
chkconfig –add memcached
chkconfig memcached on
2,安装 php-memcached 组件:
(1)从 github 下载 PHP7 专用的 memcached 组件分支
[root@MyServer ~]# wget https://github.com/php-memcached-dev/php-memcached/archive/php7.zip
[root@MyServer ~]# unzip php7.zip
[root@MyServer ~]# cd php-memcached-php7/
[root@MyServer ~]#/usr/local/php/bin/phpize ##phpize 的作用可以这样理解:侦测环境(phpize 工具是在 php 安装目录下,基于这点 phpize 对应了当时的 php 环境,所以是要根据该 php 的配置情况生成对应的 configure 文件),建立一个 configure 文件。必须在一个目录下去运行 phpize。那么 phpize 就知道你的的环境是哪个目录,并且 configure 文件建立在该目录下。
[root@MyServer ~]#./configure –with-php-config=/usr/local/php/bin/php-config –with-libmemcached-dir=/usr/local/libmemcached
[root@MyServer ~]#make && make install
ps:make install 会自动将生成的.so 扩展复制到 php 的扩展目录下去,比如会提示已经安装到 /usr/local/php/php-5.5.18/lib/php/extensions/no-debug-non-zts-20121212/目录下去
编译安装完成
(2)配置再 php 中声明模块路径。
[root@MyServer ~]#vim /etc/php.ini #再文件最后加入
extension=memcached.so
[root@MyServer ~]#php -m | grep memcached #查看 memcached 外部扩展模块是否安装成功
重启 php-fpm/nginx。
(3)测试
- [root@MyServer ~]# vim test.php
- <?php
- $m = new Memcached();
- $m->addServer( '127.0.0.1', 11211 );
- $m->set( 'foo', 100 );
- echo $m->get( 'foo' ) . "\n";
- [root@MyServer ~]# php -f test.php
- <!--?php $m = new Memcached(); $m->addServer( '127.0.0.1', 11211 );
- $m->set( 'foo', 100 );
- echo $m->get( 'foo' ) . "\n";
- [root@MyServer ~]# php -f test.php<span class="mce_SELRES_start" style="width: 0px; line-height: 0; overflow: hidden; display: inline-block;" data-mce-type="bookmark"></span>
- </pre>
- <p>将上述代码保存为 test.php,然后执行 php -f test.php,如果能输出 100 表示安装成功。</p>
- <p><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-wp-more="more" data-wp-more-text="" class="wp-more-tag mce-wp-more" alt="" title="阅读更多…" data-mce-resize="false" data-mce-placeholder="1" ?-->
3,wordpress 缓存设置
做完上述所有步骤,系统环境就已经支持 memcached 缓存了。下面分享如何应用到 WordPress
(1)安装插件
访问 github 项目页面下载插件包:
https://codeload.github.com/tollmanz/wordpress-pecl-memcached-object-cache/zip/master
下载并解压得到的 object-cache.php,上传到 wp-content 目录。
- Add the following to your wp-config.php file:
- global $memcached_servers;
- $memcached_servers = array(
- array(
- '127.0.0.1', // Memcached server IP address
- 11211 // Memcached server port
- )
- );
- If your Memcached server is located on a different server or port, adjust those values as needed. If you have multiple Memcached instances, add additional servers to the array:
- global $memcached_servers;
- $memcached_servers = array(
- array(
- '1.2.3.4',
- 11211
- ),
- array(
- '1.2.3.5',
- 11211
- )
- );
值得说明的是,这里还有一个大坑等着你来踩:
WordPress 官网上的 object-cache.php 虽然也号称 Memcached 插件,然而它只支持 Memcache,不支持新版的,所以不能使用。如果错误地将 object-cache.php 和 Memcached 混用的话,则会出现 WordPress 打不开,前台后台页面一片空白的现象。
这也就是经常有站长反馈 WordPress 启用 memcached 功能后,页面空白的错误原因了。不巧,张戈在测试的时候也踩坑了,所以特别提出来,希望大家了解错误的原因,规避掉!
(2)安装 memcache
[root@MyServer ~]# wget http://pecl.php.net/get/memcache-3.0.8.tgz #解压之后进行编辑 memcache.php 文件。
vim memcache.php
//修改四个地方(以下注释部分),登陆用户名及密码及连接信息:
define(‘ADMIN_USERNAME’,’admin’); // 此处设置登录用户名
define(‘ADMIN_PASSWORD’,’123456′); // 此处设置登录用户密码
define(‘DATE_FORMAT’,’Y/m/d H:i:s’);
define(‘GRAPH_SIZE’,200);
define(‘MAX_ITEM_DUMP’,50);
$MEMCACHE_SERVERS[] = ‘127.0.0.1:11211’; // 此处设置连接信息
//$MEMCACHE_SERVERS[] = ‘mymemcache-server2:11211’; // 只使用一个进程,此处屏蔽,否则可以设置多个连接信息
(3)把 memcache.php 文件放到 web 根目录下,使用 http://IP 地址/memcache.php 进行访问。
centos6+nginx+php+mysql+memcached+wordpress的更多相关文章
- nginx+nodejs+mysql+memcached服务器后台架设centos6.5
需要的下面四个工具最好都采用yum安装,不要采用编译安装的方法,因为编译安装会导致某些依赖关系丢失. nginx 作为HTTP和反向代理,处理静态页面,动态服务交由nodejs服务. nodejs作为 ...
- CentOS6+nginx+uwsgi+mysql+django1.6.6+python2.6.6
1.配置网关 #vi /etc/sysconfig/network NETWORKING=yes(表示系统是否使用网络,一般设置为yes.如果设为no,则不能使用网络,而且很多系统服务程序将无法启动) ...
- centos6.5+Django+mysql+nginx+uwsgi
centos6.5+Django+mysql+nginx+uwsgi 1.nginx的安装.这里采用nginx-1.6.0, 建立一个shell脚本然后执行. #!/bin/bash nginx_ve ...
- Nginx+php+mysql+wordpress搭建自己的博客站点
服务器环境要求Centos 6 或以上版本(由于我们的目标是半小时内搭建好,那就选简单yum安装)MySQL 5或更新版本Nginx 1或更新版本PHP 5 或更新版本 php-fpm 5或更新版本 ...
- 转载:Centos7 从零编译Nginx+PHP+MySql 二
序言 这次玩次狠得.除了编译器使用yum安装,其他全部手动编译.哼~ 看似就Nginx.PHP.MySql三个东东,但是它们太尼玛依赖别人了. 没办法,想用它们就得老老实实给它们提供想要的东西. 首先 ...
- 转载:Centos7 从零编译Nginx+PHP+MySql 序言 一
这次玩次狠得.除了编译器使用yum安装,其他全部手动编译.哼~ 看似就Nginx.PHP.MySql三个东东,但是它们太尼玛依赖别人了. 没办法,想用它们就得老老实实给它们提供想要的东西. 首先的一些 ...
- [原创]Centos7 从零配置Nginx+PHP+MySql
序言 这次玩次狠得.除了编译器使用yum安装,其他全部手动编译.哼~ 看似就Nginx.PHP.MySql三个东东,但是它们太尼玛依赖别人了. 没办法,想用它们就得老老实实给它们提供想要的东西. 首先 ...
- [原创]Centos7 从零编译Nginx+PHP+MySql
序言 这次玩次狠得.除了编译器使用yum安装,其他全部手动编译.哼~ 看似就Nginx.PHP.MySql三个东东,但是它们太尼玛依赖别人了. 没办法,想用它们就得老老实实给它们提供想要的东西. 首先 ...
- CentOS6.3编译安装Memcached
要用到如下源码包: /usr/local/src/memcached/libevent-2.0.21-stable.tar.gz /usr/local/src/memcached/memcached- ...
随机推荐
- 数据库schema的简介
[参考]自百度百科 数据库中的Schema,为数据库对象的集合,一个用户一般对应一个schema. 官方定义如下: A schema is a collection of database objec ...
- VMware Station NAT上网模式配置
- 使用maven下载源码和doc(转)
原文链接: http://blog.csdn.net/sxdtzhaoxinguo/article/details/46518295 http://blog.csdn.net/chengxusheji ...
- JVM自动内存管理:对象判定和回收算法
可回收对象的判断方法 1.引用计数算法 2.可达性分析算法 引用计数算法 给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1:当引用失效时,计数器值就减1:任何时刻计数器为0的对象就是 ...
- runtime error (运行时错误)
比如说: ①除以零 ②数组越界:int a[3]; a[10000000]=10; ③指针越界:int * p; p=(int *)malloc(5 * sizeof(int)); *(p+10000 ...
- 为什么在开发中大部分的时候都在用session而Application基本上都不去使用?
问题描述 为什么在开发中大部分的时候都在用session而Application基本上都不去使用? 为什么在开发中大部分的时候都在用session而Application基本上都不去使用?为什么在开发 ...
- Android PopupWindow中EditText获取焦点自动弹出软键盘
公司的项目中要求在点击搜索的时候弹出一个搜索框,搜索框中有一个EditText,用于数据搜索关键字,要求在弹出PopupWindow的时候自动弹出软键盘,原以为只要写上着两行代码可以搞的问题: Inp ...
- STM32 LSM6DSL 陀螺仪数据采集
/************************************************************************************ * STM32 LSM6DS ...
- 文件的存储GridFS
1.存储路径--->可以理解就是存储路径,然后在通过路径来获取文件 将文件放在本地路径(网络路径)下,然后数据库中存储该文件的查找路径 db.log.insert({filename:" ...
- Unity3D安卓程序中提示窗与常用静态方法封装
Unity3D/安卓封装SDK常用方法 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 IO -- - ...