码迷,mamicode.com
首页 > 系统相关 > 详细

LNMP+memcached平台源码包的搭建和配置

时间:2015-09-17 17:39:44      阅读:320      评论:0      收藏:0      [点我收藏+]

标签:lnmp+memcached平台源码包的搭建和配置

实验目的: 搭建LNMP平台

L          N          M           P
Linux   Nginx   MySQL   PHP(解释PHP语言的程序)

实验环境:

LNMP平台的搭建IP地址:192.168.1.254 主机名:localhost

安装软件:lnmp+memcached.zip(nginx-1.2.0.tar.gz,cmake-2.8.10.2.tar.gz, mysql-5.5.13.tar.gz)

安装编译工具:gcc gcc-c++ make 开发工具 搭建YUM源。

技术分享

技术分享

技术分享

实验(一)

实验目的:搭建Nginx服务

安装的软件:nginx-1.2.0.tar.gz

1.解压软件包

技术分享

2.配置源码包, --prefix=/usr/local/nginx
指定nginx安装的目录,--pid-path=/usr/local/nginx/nginx.pid指定pid号安装的位置, --user=www   --group=www
指定所有者和所属组,--with-http_ssl_module指定客户端访问有http功能的模块, --with-http_flv_module指定支持视频格式的模块,--with-http_stub_status_module指定管理用户可以通过web页面查看用户访问公共信息,--with-http_gzip_static_module指定支持gzip格式的模块,--http-client-body-temp-path=/usr/local/nginx/client  --http-proxy-temp-path=/usr/local/nginx/proxy
指定支持代理服务,缓存客户端访问过的数据,指定缓存目录的路径, --http-fastcgi-temp-path=/usr/local/nginx/fcgi  --http-uwsgi-temp-path=/usr/local/nginx/uwsgi  --http-scgi-temp-path=/usr/local/nginx/scg缓存文件存放的路径,--with-pcre支持地址重写功能。

技术分享

技术分享

技术分享

安装软件包

技术分享

3.启动服务

技术分享

4.本机进行测试

技术分享

实验(二)

实验目的:搭建MYSQL服务

安装的软件:mysql-5.5.13.tar.gz,cmake-2.8.10.2.tar.gz

由于mysql5.5版本需要用cmake安装,所以要现安装cmake软件包

1.解压cmake软件包

技术分享

技术分享

2.对cmake进行配置,编译和安装。

技术分享

技术分享

3.查看cmake的版本,如果可以查到说明安装成功。

技术分享

4.解压mysql软件包

技术分享

5.对用cmake对mysql源码包进行配置,/usr/local/cmake/bin/cmake为启动的路径, -DCMAKE_INSTALL_PREFIX=/usr/local/mysql为mysql安装的目录,-DSYSCONFDIR=/etc
为配置文件存放的目录,-DMYSQL_DATADIR=/usr/local/mysql/data为数据库文件存放的目录,-DMYSQL_TCP_PORT=3306为指定的端口,-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock为sock文件存放的目录,-DMYSQL_USER=mysql为mysql的所有者,-DEXTRA_CHARSETS=all支持所有字符集,-DWITH_READLINE=1   -DWITH_SSL=system   -DWITH_EMBEDDED_SERVER=1   -DENABLED_LOCAL_INFILE=1   -DWITH_INNOBASE_STORAGE_ENGINE=1为1代表启动以上模块

技术分享

查看系统中有没有mysql用户

技术分享

技术分享

安装时出现一下错误,解决的方法,提示没有找到curses文件,并且提示要删除CMakeCache.txt文件。

技术分享

查看系统中有没有curses数据库文件,查看没有curses数据库文件,安装

技术分享

技术分享

技术分享

技术分享

6.初始化授权库的文件所有者和所属组都是mysql用户

技术分享

技术分享

技术分享

7.创建mysql数据库的主配置文件

技术分享

启动数据库服务在后台运行,jobs查看后面运行的程序。

技术分享

技术分享

8.使用数据库管理员从数据库服务器本机登录(没密码)

技术分享

9.设置数据库管理员从本机登录的密码

技术分享

技术分享

技术分享

修改数据库的密码

技术分享

由于每次输入命令时,路径比较长为了方便把把mysql命令所在的路径添加到系统环境变量PATH里

技术分享

技术分享

给源码mysql服务编写启动脚本,源码包中提供了启动脚本。

技术分享

技术分享

停止mysqld服务,重新启动mysqld服务

技术分享

设置mysqldd随开机自启动

技术分享

实验(三)

实验目的:安装源码PHP

安装的软件: mhash-0.9.9.9.tar.gz, php-5.4.9.tar.gz,libiconv-1.13.tar.gz,libmcrypt-2.5.8.tar.gz

1、安装php的扩展功能包,解压支持哈稀函数库软件包。

技术分享

技术分享

技术分享

2.解压支持安装处理中文各种编码之间的转换软件包,ibiconv-1.13.tar.gz

技术分享

技术分享

技术分享

3.解压支持提供加密功能的库文件的软件包,libmcrypt-2.5.8.tar.gz

技术分享

技术分享

4.安装PHP软件包解压

技术分享

5.对源码包进行配置,--prefix=/usr/local/php指定安装的目录,--with-config-file-path=/usr/local/php/etc
指定配置文件存放的目录,--with-mysql=/usr/local/mysql支持mysql的安装位置目录,--with-mysqli=/usr/local/mysql/bin/mysql_config 指定mysqli文件目录,优化支持,--with-iconv-dir=/usr/local指定iconv函数,种字符集间的转换,--with-freetype-dir 打开对freetype字体库的支持, --with-jpeg-dir --with-png-dir 打开对图片的支持, --with-zlib 打开zlib库的支持,--with-libxml-dir=/usr --enable-xml 打开libxml2库的支持 --disable-rpath 关闭额外的运行库文件,--enable-bcmath打开图片大小调整,用到zabbix监控的时候用到了这个模块, --with-curl 打开curl浏览工具的支持,--with-curlwrappers 运用curl工具打开url流 --enable-mbstring  多字节,字符串的支持,--with-gd打开gd库的支持,--enable-gd-native-ttf支持TrueType字符串函数库,--with-mhash支持哈稀函数库,--enable-sockets打开 sockets 支持, --with-xmlrpc 打开xml-rpc的c语言,--enable-zip打开对zip的支持。

技术分享

执行脚本

技术分享

执行脚本后出现以下一系列错误没有找到的库文件,以及解决的方法。

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

对源码包进行编译和安装,编译时必须加上后面的选项。

技术分享

技术分享

出现这类错误表示,系统不知道xxx.so放在哪个目录下,这时候就要在/etc/ld.so.conf中加入xxx.so所在的目录。

技术分享

技术分享

技术分享

出现以下页面说明PHP安装成功。

技术分享

测试

1.客户端 是否访问Nginx软件提供的网站服务。

技术分享

2.客户端能否通过nginx网站服务器访问.php的网页页面,通过测试证件nginx默认不支持.php的网页。

技术分享

实验(四)

实验目的:nginx能够解释php页面
1.创建fast-cgi服务的主配置文件,在源码包 中有配置文件的模板,只要复制就可以(cgi通用网关接口)。

技术分享

2.启动fast-cgi服务,在源码包中有启动脚本,只要复制启动脚本就可以,(作用管理php程序)

技术分享

技术分享

3.启动服务

技术分享

4.修改nginx的主配置文件,把自己接收到的访问php文件的请求给本机的9000端口。

技术分享

技术分享

让nginx支持fastcgi模块

技术分享

技术分享

检测nginx主配置文件是否有错误,重新启动服务。

技术分享

测试通过nginx服务器访问php代码文件

技术分享

通过测试说明nginx可以解释php代码,如果想php支持那些功能模块,可以通过以下方法查看

技术分享

通过网页进行测试查看功能

技术分享



测试 php 能否连接mysql数据库?

创建一个文件为linkdb.php用来测试是否可以连接mysql数据库。mysql_connect为php连接mysql的内置函数其他的为判断,$linkdb为php的变量。

技术分享

访问创建的文件来判断是否 可以连接mysql数据库,说明可以连接到mysql数据库。

技术分享

实验(五)

实验目的:LNMP+Memcached

1.安装memcached的环境包libevent-2.0.21-stable.tar.gz

技术分享

技术分享

技术分享

技术分享

2.安装memcached软件包 memcached-1.4.5.tar.gz

技术分享

技术分享

技术分享

启动memcached服务

技术分享

3.安装php连接memcached服务的连接工具,查看php支持那些模块,查看是否有memcache.so模块,memcache.so模块就是php连接memcached服务的连接工具。

技术分享

添加memcache.so模块,解压软件包memcache-2.2.5.tgz

技术分享

技术分享

对源码包进行配置编译和安装--with-php-config=/usr/local/php/bin/php-config指定php配置安装目录,--enable-memcache为启用memcache模块,查看memcache.so模块是否安装成功。

技术分享

技术分享

技术分享

技术分享

php程序运行时加载memcache.so模块

修改php的主配置文件php.ini,extension_dir指定模块存放的路径extension指定模块的名称。

技术分享

技术分享

技术分享

把管理memcache.so进程的服务重新启动fast-cgi

技术分享

4.让nginx接收到用户的连接请求后,先找本机的memcached服务,

修改nginx的主配置文件,set  $memcached_key  $uri; //set是定义变量的$memcached_key为变量名, $uri为变量的值,uri为nginx的内置变量,memcached_pass  127.0.0.1:11211;//把请求发给memcached服务器,指定memcached服务器的地址和端口,default_type text/html;//为固定网页文件的类型,error_page 404   @fallback; //请求跳转标记,当找不到的时候返回404代码,@fallback指定在网页目录去找网页文件。

技术分享

技术分享

5.测试php能否连接memcached存取数据,memcache.so模块有连接命令 和存数据工具和取数据的工具。

编写一个php文件为mem.php用来存放数据和取数据,$memcache=new Memcache为生成一个类的对象,$memcache为对象名,$memcache->connect为 类的方法,$memcache->set,set为存数据,$var=$memcache->get,get为取数据,$var为取出来的值定义一个变量,echo $var为显示这个值。

技术分享

技术分享

技术分享

出现以上界面说明php可以连接memcached存取数据。

本文出自 “脚踏实地向前行” 博客,请务必保留此出处http://343614597.blog.51cto.com/7056394/1695747

LNMP+memcached平台源码包的搭建和配置

标签:lnmp+memcached平台源码包的搭建和配置

原文地址:http://343614597.blog.51cto.com/7056394/1695747

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!