在公司上新项目的时候,无论生产环境还是测试环境,都会让运维安装php 环境(lamp/lnmp),并让php支持memcached 的扩展。这里搭建php环境其实主要就是搭建apache 和php。mysql一般都是用单独的数据库,不会再同一台服务器上的。看似简单的东西,在搭建的时候,还真是遇到了不少问题,以此记录,方便各位运维同学。

一.163和默认的镜像源有些包不能下载,使用阿里的镜像源

见本博客地址:http://www.cnblogs.com/lzcys8868/p/7532569.html

二. 必须安装webtatic库

Centos 5.X
  rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm
 
CentOs 6.x
 rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
 
CentOs 7.X
 rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
 rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
 
 
三. yum 安装httpd及其扩展
1.安装httpd及其扩展
yum –y install httpd  httpd-devel
yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql
 
2.设置开机启动Apache
chkconfig --levels 235 httpd on
 
3.启动Apache
service httpd start
四. 安装php5.5版本. php要求使用5.5。yum 默认安装的是php5.3
1.安装php5.5
yum -y install php55w.x86_64 php55w-cli.x86_64 php55w-common.x86_64 php55w-gd.x86_64 php55w-ldap.x86_64 php55w-mbstring.x86_64 php55w-mcrypt.x86_64 php55w-mysql.x86_64 php55w-pdo.x86_64 php55w-devel
 
报错:Error: Package: php55w-mcrypt-5.5.38-1.w6.x86_64 (webtatic)
           Requires: libmcrypt.so.4()(64bit)
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
2.错误提示缺少libmcrypt.so这个库。安装libmcrypt,libmcrypt-deve
rpm -ivh epel-release-6-8.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
yum -y install libmcrypt libmcrypt-devel
 3.在重新安装php5.5
 
4.安装php-fpm5.5 模块
yum -y install php55w-fpm php55w-common
注:如果yum 不能安装,修改webtatic.repo 镜像源地址
[root@localhost phpredis-develop]# vim /etc/yum.repos.d/webtatic.repo
 [webtatic]
name=Webtatic Repository EL6 - $basearch
baseurl=https://repo.webtatic.com/yum/el6/$basearch/ // 启用本机镜像地址
#mirrorlist=https://mirror.webtatic.com/yum/el6/$basearch/mirrorlist // 禁用网络镜像地址
failovermethod=priority
enabled=1 // 启用
gpgcheck=0 // 注释掉
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-webtatic-el6

在次重新yum 安装 php55w-fpm   php55w-common

五. 先搭建memcached 服务端,见本博客地址:http://www.cnblogs.com/lzcys8868/p/7532615.html
   安装包使用如下版本
   memcached 服务端安装包:
      memcached-1.4.0.tar.gz   libevent-2.0.22-stable.tar.gz
 
   php支持memcached 扩展安装包:
      memcached-2.2.0.tgz     libmemcached-1.0.18.tar.gz  
  
  安装包下载地址:链接:http://pan.baidu.com/s/1eS8f1Yy 密码:ph4b
               链接:http://pan.baidu.com/s/1gfo05CB 密码:1qdn
      
六. php扩展memcached
php的扩展memcache,不支持cas,所以我们要装memcached扩展,memcached扩展是基于libmemcached,所以要先安装libmemcached
 
[root@localhost soft]# ls
memcached-1.4.0.tar.gz
libevent-2.0.22-stable.tar.gz  memcached-2.2.0.tgz
libmemcached-1.0.18.tar.gz    
[root@localhost soft]#tar xf libmemcached-1.0.18.tar.gz -C /usr/src
[root@localhost soft]# cd /usr/src/libmemcached-1.0.18/
[root@localhost libmemcached-1.0.18]#  ./configure --prefix=/usr/local/libmemcached --with-memcached=/usr/local/memcached/bin/memcached  
[root@localhost libmemcached-1.0.18]# make && make install
[root@localhost libmemcached-1.0.18]# cd /root/soft/
[root@localhost soft]# tar xf memcached-2.2.0.tgz -C /usr/src/
[root@localhost soft]# cd /usr/src/memcached-2.2.0/
[root@localhost memcached-2.2.0]# /usr/bin/phpize
[root@localhost memcached-2.2.0]# ./configure --with-php-config=/usr/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached
 
error1: no, sasl.h is not available. Run configure with –disable-memcached-sasl to disable this check

如果报errro1 的错误,根据引导执行

[root@localhost memcached-2.2.0]# ./configure --with-php-config=/usr/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --disable-memcached-sasl --with-zlib-dir
 
error2: memcached support requires ZLIB. Use --with-zlib-dir=<DIR> to specify the prefix where ZLIB headers and library are located
如果报error2的错误,根据如下方法解决
yum install libmemcached libmemcached-devel
yum install zlib zlib-devel

报错解决之后,编译安装

[root@localhost memcached-2.2.0]# make && make install   //出现如下行,说明编译安装正确
Installing shared extensions:        /usr/lib64/php/modules/
[root@localhost memcached-2.2.0]# vim /etc/php.ini    //在最后加入
extension=memcached.so
[root@localhost memcached-2.2.0]# php -m | grep memcached    //查看是否有memcached扩展
memcached
 

yum 安装apache php 使php支持memcached扩展的更多相关文章

  1. 【apache】yum 安装Apache(Centos 6.5)

    一.首先在系统上面查询一下是否已经安装了apache [Apache在linux系统里的名字是httpd] rpm    -qa    httpd 如果有返回的信息,则会显示已经安装的软件.如果没有则 ...

  2. yum 安装Apache

    1.查看是否安装Apache,命令:  rpm    -qa    httpd 2.yum install httpd ,yum安装Apache 3.chkconfig    httpd  on  s ...

  3. Centos 6.5 yum 安装Apache软件

    首先在系统上面查询一下是否已经安装了apache 软件[Apache软件在linux系统里的名字是httpd] rpm    -qa    httpd 如果有返回的信息,则会显示已经安装的软件.如果没 ...

  4. CentOS上使用yum安装Apache

    关键词 CentOS上使用yum安装Apache 摘要 Apache在Linux系统中,其实叫“httpd”,它“无耻的”占据了官方名义!CentOS可以使用yum命令,非常简单和容易的安装Apach ...

  5. yum安装Apache,Mysql,PHP

    用yum安装Apache,Mysql,PHP.  用yum安装Apache,Mysql,PHP. 2.1安装Apache yum install httpd httpd-devel 安装完成后,用/e ...

  6. yum安装Apache Web Server后各个文件存放位置

    yum安装Apache Web Server后各个文件存放位置   用yum安装apache软件: yum -y install httpd 安装完成后,来查看理解yum安装软件的过程和安装路径.   ...

  7. Centos7:yum安装apache,编译安装php5.6,不解析php的解决方法

    首先,说一下问题发生的场景: 因为懒,所以用 yum 安装 apache ,因为 centos 的源自带 php 5.4 不能符合环境要求,而不想用其他源,所以选择源码编译安装 php 5.6 安装完 ...

  8. CentOS下使用yum安装Apache极为方便,只需要在终端键入以下命令即可

    CentOS下使用yum安装Apache极为方便,只需要在终端键入以下命令即可 1.安装Apache yum install httpd 2.设置服务器开机自动启动Apache systemctl e ...

  9. 转载:centos上yum安装apache+php+mysql等

    1. 更新系统内核到最新. [root@linuxfei ~]#yum -y update 系统更新后,如果yum安装时提示错误信息,请执行以下命令修复. [root@linuxfei ~]#rpm ...

随机推荐

  1. solr6.6安装

    1. 确保系统已经安装jdk1.8,以及Tomcat8. 注:使用Tomcat7会出现很多问题,我遇到的是直接打不开solr的index页面,看网上有网友说还会遇到各种css.js资源404..还有l ...

  2. hdu 4991(树状数组+DP)

    Ordered Subsequence Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Othe ...

  3. AC日记——文艺平衡树 洛谷 P3391

    文艺平衡树 思路: splay翻转操作模板: 虚拟最左最右端点,然后每次都把l翻转到root,r+2翻转到root的右节点: 然后在r+2的左节点上打标记: 标记需要在旋转,rank,print时下放 ...

  4. SSRS的配置

    SSRS是微软的报表服务管理器,本文讲述SSRS的配置:邮件和凭证. 一,配置SMTP 在报表服务配置管理器(Reporting Service Configuration Manager)中配置邮件 ...

  5. CS Academy Round #65 Count Arrays (DP)

    题目链接  Count Arrays 题意  给定$n$和$m$个区间.若一个长度为$n$的$01$序列满足对于每一个给定的区间中至少有一个位置是$0$, 那么这个$01$序列满足条件.求有多少满足条 ...

  6. HDFS Scribe Integration 【转】

    It is finally here: you can configure the open source log-aggregator, scribe, to log data directly i ...

  7. path.join 与 path.resolve 的区别

    1. 对于以/开始的路径片段,path.join只是简单的将该路径片段进行拼接,而path.resolve将以/开始的路径片段作为根目录,在此之前的路径将会被丢弃,就像是在terminal中使用cd命 ...

  8. Java Servlet Filter

    做web开发的人对于Filter应该不会陌生,一直在很简单的使用,但是一直没有系统的总结一下,随着年纪的慢慢长大,喜欢总结一些事情,下面说说我对Filter的理解,官方给出的Filter的定义是在请求 ...

  9. Oracle 检查表空间使用情况

    --检查表空间使用情况  SELECT f.tablespace_name       , a.total "total (M)"       , f.free "fre ...

  10. VS2010中打开VS2012项目的方法

    VS2012中对C#的支持度非常好,不管是编写方便程度(不需要插件就能高亮代码及代码自动提示功能),还对MFC的一些功能优化很多. 修改两个工程文件就把VS2012的项目移植到VS2010中去的方法如 ...