ubuntu下安装lampp+memcache
By
KUCO | Published:
2010/08/15部分内容来自这里
部分内容来自这里
部分内容来自这里
##########################
# LAMPP部分
##########################
1, 下载 http://www.apachefriends.org/zh_cn/xampp-linux.html
2, 安装
2 | tar xvfz xampp-linux-1.7.3a.tar.gz -C /opt #安装 |
就这样结束了。XAMPP 被安装在 /opt/lampp 目录下。
3, 运行
您应该能在屏幕上看到类似下面的提示信息:
1 | Starting XAMPP 1.7.3a... |
2 | LAMPP: Starting Apache... |
3 | LAMPP: Starting MySQL... |
好了。Apache 和 MySQL 正在运行中。
4, 其它
使用它, 在浏览器中输入
高级的启动与停止参数
04 | startapache #只启动 Apache。 |
05 | startssl #启动 Apache 的 SSL 支持。该命令将持续激活 SSL 支持,例如:执行该命令后,如果您关闭并重新启动 XAMPP,SSL 仍将处于激活状态。 |
06 | startmysql #只启动 MySQL 数据库。 |
07 | startftp #启动 ProFTPD 服务器。通过 FTP,您可以上传文件到您的网络服务器中(用户名“nobody”,密码“lampp”)。该命令将持续激活 ProFTPD,例如:执行该命令后,如果您关闭并重新启动 XAMPP,FTP 仍将处于激活状态。 |
09 | stopssl #停止 Apache 的 SSL 支持。该命令将持续停止 SSL 支持,例如:执行该命令后,如果您关闭并重新启动 XAMPP,SSL 仍将处于停止状态。 |
10 | stopmysql #停止 MySQL 数据库。 |
11 | stopftp #停止 ProFTPD 服务器。该命令将持续停止 ProFTPD,例如:执行该命令后,如果您关闭并重新启动 XAMPP,FTP 仍将处于停止状态。 |
12 | security #启动一个小型安全检查程序。 |
重要的文件和目录
1 | /opt/lampp/bin/ #XAMPP 命令库。例如 /opt/lampp/bin/mysql 可执行 MySQL 监视器。 |
2 | /opt/lampp/htdocs/ #Apache 文档根目录。 |
3 | /opt/lampp/etc/httpd.conf #Apache 配制文件。 |
4 | /opt/lampp/etc/my.cnf #MySQL 配制文件。 |
5 | /opt/lampp/etc/php.ini #PHP 配制文件。 |
6 | /opt/lampp/etc/proftpd.conf #ProFTPD 配制文件。(从 0.9.5 版开始) |
7 | /opt/lampp/phpmyadmin/config.inc.php #phpMyAdmin 配制文件。 |
##########################
# MEMCACHE部分
##########################
1, 分别把memcached和libevent下载回来,放到 /tmp 目录下
2, 先安装libevent
1 | tar zxvf libevent-1.2.tar.gz |
3 | ./configure –prefix=/usr |
3, 测试libevent是否安装成功
1 | # ls -al /usr/lib | grep libevent |
2 | lrwxrwxrwx 1 root root 21 11?? 12 17:38 libevent-1.2.so.1 -> libevent-1.2.so.1.0.3 |
3 | -rwxr-xr-x 1 root root 263546 11?? 12 17:38 libevent-1.2.so.1.0.3 |
4 | -rw-r–r– 1 root root 454156 11?? 12 17:38 libevent.a |
5 | -rwxr-xr-x 1 root root 811 11?? 12 17:38 libevent.la |
6 | lrwxrwxrwx 1 root root 21 11?? 12 17:38 libevent.so -> libevent-1.2.so.1.0.3 |
还不错,都安装上了。
4, 安装memcached,同时需要安装中指定libevent的安装位置
2 | tar zxvf memcached-1.2.0.tar.gz |
4 | ./configure –with-libevent=/usr |
如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径。
安装完成后会把memcached放到 /usr/local/bin/memcached
5, 测试是否成功安装memcached
1 | # ls -al /usr/local/bin/mem* |
2 | -rwxr-xr-x 1 root root 137986 11?? 12 17:39 /usr/local/bin/memcached |
3 | -rwxr-xr-x 1 root root 140179 11?? 12 17:39 /usr/local/bin/memcached-debug |
6, 安装Memcache的PHP扩展
在http://pecl.php.net/package/memcache 选择相应想要下载的memcache版本。
安装PHP的memcache扩展
1 | tar vxzf memcache-2.2.1.tgz |
4 | ./configure --with-php-config=/opt/lampp/bin/php-config --enable-memcache |
如果安装成功会显示类似提示
1 | Installing shared extensions: /opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/ |
在 ./configure 时
可能会遇到如下错误
1 | Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable is set correctly and then rerun this script. |
解决:
02 | wget http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz |
03 | tar -zvxf m4-1.4.9.tar.gz |
05 | ./configure && make && make install |
07 | wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz |
08 | tar -zvxf autoconf-2.62.tar.gz |
10 | ./configure && make && make instal |
可能会遇到如下错误
1 | 报错,缺少 php.h、zend_modules.h、zend_extensions.h |
2 | 或 报错,configure: error: Cannot find php_session.h |
解决:
错误原因是由于使用的Lampp是应用版,缺少必要的头文件!
下载Lampp开发包(xampp-linux-devel-1.7.2.tar.gz)到临时目录
下载地址还是:http://www.apachefriends.org/zh_cn/xampp-linux.html
解压开发包,将其中的include目录复制到应用的lampp目录下
1 | tar -zxvf xampp-linux-devel-1.7.2.tar.gz |
2 | cp ./lampp/include /opt/lampp/ -R |
7, 修改Php配置文件,启用Memcache
1 | vi /opt/lampp/etc/php.ini |
2 | //找到Dynamic Extensions的位置,添加一行:extension="memcache.so" |
8, 重启Lampp
1 | /opt/lampp/lampp restart |
这时,使用phpinfo脚本查看时,会发现memcache的配置段,说明安装成功!
9, 启动Memcache的服务器端:
1 | /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.101 -p 12000 -c 256 -P /tmp/memcached.pid |
-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
-u是运行Memcache的用户,我这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.0.101,
-p是设置Memcache监听的端口,我这里设置了12000,最好是1024以上的端口,
-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,
如果要结束Memcache进程,执行:
1 | kill `cat /tmp/memcached.pid` |
10, 在/opt/lampp/htdocs/下建立一个测试php:test.php
3 | $mem->connect('192.168.1.101', 12000); |
4 | $mem->set('key', 'This is a test!', 0, 60); |
5 | $val = $mem->get('key'); |