螃蟹分享下载站:专注做好下载站 www.ahjiajia.com!
游戏
您当前所在位置:首页 >软件教程 >应用教程

linux安装php与memcache过程记录(1)

时间:2024-09-02 09:51 来源:网络

系统大全为您提供

安装环境是Ubuntu13.10版本i386,已经安装好nginx服务器和mysql服务器,现在的任务是需要安装php和memcache。直接干货,多余的不说。

1、php安装及错误排查

由于php安装前需要安装很多库文件,因此需要耐心得按照一定的顺序来安装。我按照如下顺序安装:

zlib -> freetype -> libxml2 -> libpng -> libgd2 -> libmcrypt

其中的也有依赖关系的是,安装gd2需要用到zlib、freetype、libpng(libjpeg)等,因此需要先安装这些之后再安装gd2。这里的安装按照通用目录配置到/usr/local

x目录下,一般不会出现问题,可能在安装freetype时会出现问题:

 

注意,安装freetype时有可能提示如下错误:

 either set the LIBPNG_CFLAGS and LIBPNG_LDFLAGS environment variables

 

这是提示找不到libpng的安装位置,所以需要将libpng的bin目录配置到环境变量中:

解决方法:

编辑:vi /etc/profile

LIB_PNG=/usr/local

bpng/bin

PATH=$LIB_PNG:$PATH  

export PATH 

生效:.  /etc/profile

这里我想记录一下的是我安装GD2的时候没有报错,安装成功了。但是后来安装php的时候,在配置中配置好GD2的安装目录后,出现错误,而且configure是没问题,是在安装的时候出错的,要知道安装php的时候configure本来就要很久,然后没错,make的时候也要很久,这样等了很久很久之后突然说编译出错,真的是有点崩溃。错误如下:

/usr/local

c/php-5.5.6/ext/gd/gd.c:57:22: error: X11/xpm.h: No such file or directory

make: *** [ext/gd/gd.lo] Error 1

说明:这是提示没有安装libXpm库,是在安装gd2库的时候没有配置开启。

这样我去查之前配置安装gd2的时候提示,确实发现对libXpm库不支持,如下:

** Configuration summary for libgd 2.1.0:

   Support for Zlib:                 yes

   Support for PNG library:          yes

   Support for JPEG library:         no

   Support for VPX library:          no

   Support for TIFF library:         no

   Support for Freetype 2.x library: yes

   Support for Fontconfig library:   no

   Support for Xpm library:          no

   Support for pthreads:             yes

因此,解决办法就是去下载libXpm库安装:

sudo apt-get install libXpm-dev

这样安装后本以为可以了,就去重新安装gd2库,在配置gd2的时候多加一条 --with-xpm=/usr

b。

但是配置时会提示找不到xpm库,这里我上网找到了解决办法,在/usr

b下面建立软连接文件到真实的xpm库文件,如下:

ln -s /usr

b/ (x86_64 or i386 ) 

bXpm.a  /usr

b

bXpm.a

 ln -s /usr

b/ (x86_64 or i386 ) 

bXpm.so  /usr

b

bXpm.so

 ln -s /usr

b/ (x86_64 or i386 ) 

bXpm.so.4  /usr

b

bXpm.so.4

 ln -s /usr

b/ (x86_64 or i386 ) 

bXpm.so.4.11  /usr

b

bXpm.so.4.11

操作完成之后,就可以重新安装gd2库了,配置完成成功:

linux安装php与memcache过程记录(1)

 会发现 "Support for Xpm library : yes"这一项,说明配置成功,然后make && make install即可完成安装gd2库。

接着安装所有库文件完成后,可以配置php安装了,由于之前,配置成功,编译出错,因此这次配置的时候需要加入 --with-xpm-dir=/usr

b/这一项才能编译成功。完整配置如下:

 ./configure   

  --prefix=/usr/local/php5.5     

  --with-libxml-dir=/usr/local

bxml2/   

  --with-png-dir=/usr/local

bpng/   

  --with-freetype-dir=/usr/local/freetype/   

  --with-gd=/usr/local/gd2/   

  --with-zlib-dir=/usr/local/zlib/   

  --with-mcrypt=/usr/local

bmcrypt/   

  --with-xpm-dir=/usr

b/   

  --with-mysql   

  --with-mysqli   

  --enable-pdo   

  --with-pdo-mysql    

  --with-iconv  

  --enable-soap   

  --enable-mbstring=all   

  --enable-sockets 

  --enable-fpm

这样configure和make、make install之后,就可以完成php的安装。然后使用

sudo /usr/loca/php5.5/sbin/php-fpm

开启php-fpm服务,可以将这条命令加入到/etc/rc.local文件中作为自启动服务。

在nginx的配置文件中添加对php的支持即可使用php开发了。

2、安装memcache及错误处理

memcache分为服务器端和php扩展,服务器端使用memcached表示,完成所有数据的存储删除等各种管理,php扩展是php使用memcache的一个扩展库,用memcache表示,用于调用和访问系统的memcache服务,直接在php中使用new Memcache即可。

(1)首先需要安装服务器,这个直接使用ubuntu的默认安装即可:

sudo apt-get install memcached

安装完Memcache服务端以后,使用如下命令启动服务:

memcached -d -m 128 -p 11111 -u root

memcached服务的启动参数说明:

-p  TCP监听的端口,默认是11211

-l  连接的IP地址, 默认是本机

-d 启动memcached服务

-d restart 重起memcached服务

-d stop|shutdown 关闭正在运行的memcached服务

-d install 安装memcached服务

-d uninstall 卸载memcached服务

-u   运行身份 (仅在以root运行的时候有效)

-m  最大内存使用,单位MB。默认64MB

-M  内存耗尽时返回错误,而不是删除项

-c  最大同时连接数,默认是1024

-C 禁止使用CAS

-P  设置PID保存的文件名,仅仅和 -d 选项一起调用

-f   块大小增长因子,默认是1.25-n 最小分配空间,key+value+flags默认是48

-t  使用的线程数目,默认是4

-b  设置备份日志队列的大小,默认是1024

-R  设置每个事件的最大请求数目,默认是20

-h 显示帮助

可以从下图查看memcached服务器是否开启: 

linux安装php与memcache过程记录(1)

可以看到11211端口以处于LISTEN状态,说明memcached服务器已经开启。

(2)安装memcache客户端

这个安装其实就是在php已经安装完成的基础上,给php安装新的扩展,就类似为一个没有配置安装socket的php在不卸载php的前提下重新安装一个socket的扩展的原理类似。

首先可以使用php自带的pecl安装程序:

/usr/local/php5.5/bin/pecl install memcache

其次也可以用如下命令下载源码包后解压安装:  

wget http://pecl.php.net/get/memcache-2.2.6.tgz

但是我遇到的问题是,不论使用上述哪个方法,最终的结果都是要使用phpize工具为memcache生成配置文件,而这个需要autoconf这个库,从之前安装php的配置中可以看出,我并有安装autoconf库,因此我使用上述两种方法安装都会报同样的错:

linux安装php与memcache过程记录(1)

 同样,当我使用源码包安装的时候,进入到memcache源码包后,需要使用/usr/local/php5.5/bin/phpize工具来生成configure文件,会与上图报同样的错误。从此处也可以说明,上述两种安装方式都是殊途同归,原理都一样。

  以上就是系统大全给大家介绍的如何使的方法都有一定的了解了吧,好了,如果大家还想了解更多的资讯,那就赶紧点击系统大全官网吧。 

 

本文来自系统大全http://www.win7cn.com/如需转载请注明!推荐:win7纯净版

相关应用
同步课堂学生
107.2MB / 3.0.41
央视影音HD
76.1MB / 7.9.3
外研社德语
23.5MB / 3.8.6
上啥班
103.9MB / 5.4.5
摩托范
186.0MB / 3.59.40
Kindle
103.0MB / 8.89.3.10(2.0.3821.0-kfc)
启信宝
48.1MB / 9.26.20
Only婚恋
57.8MB / 5.4.0
来疯
163.6MB / 9.1.6
最美装修
42.6MB / 3.4.0
掌上火车票
18.5MB / 9.1.0
哆哆早教
118.6MB / 7.2.1
中影电影通
36.0MB / 2.41.0