设为首页 收藏本站
查看: 1901|回复: 0

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

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-9-18 12:50:25 | 显示全部楼层 |阅读模式
实验目的: 搭建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源。
wKiom1X3-MbzEQWKAADCvgTExJA815.jpg
wKioL1X3-1uxq77fAAA3Aiu3HRY649.jpg
wKiom1X3-S7jlDSGAABBMyXynZU502.jpg
实验(一)
实验目的:搭建Nginx服务
安装的软件:nginx-1.2.0.tar.gz
1.解压软件包
wKiom1X3-e-xUZQnAABhJMNulGI495.jpg
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支持地址重写功能。
wKioL1X4BHnBQmL_AAKTxktfRuk491.jpg

wKiom1X4BSWTg3aDAAHJUBQbsRo673.jpg
wKioL1X4B3qSecpCAABaJsRAScY702.jpg
安装软件包

wKiom1X4BcGCezqMAABPaSJNBZo781.jpg
3.启动服务

wKiom1X4Boqhi0iNAAE9QSD5l5g917.jpg
4.本机进行测试

wKiom1X4BwyAcyORAAFhq2D00rc478.jpg
实验(二)

实验目的:搭建MYSQL服务
安装的软件:mysql-5.5.13.tar.gz,cmake-2.8.10.2.tar.gz
由于mysql5.5版本需要用cmake安装,所以要现安装cmake软件包
1.解压cmake软件包
wKiom1X4CETBqaQNAAB62bRZLZU781.jpg
wKiom1X4CMuRVSXzAABPCkwDMBI580.jpg
2.对cmake进行配置,编译和安装。
wKiom1X4CRGy_tgsAABwvljGPec965.jpg
wKiom1X4CZaQZmHpAABSeeNDrDo098.jpg
3.查看cmake的版本,如果可以查到说明安装成功。
wKiom1X4Ci2B2M9bAACKAv6tteo962.jpg
4.解压mysql软件包

wKiom1X4B3eSIMGZAABguclSc3Y838.jpg
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代表启动以上模块

wKiom1X4B63T-zDkAAIN3jJ_K5M675.jpg

查看系统中有没有mysql用户
wKiom1X4DdrzPLx2AACyuPoWahw029.jpg
wKiom1X4CzXSgzqLAABP05OkW2M149.jpg
安装时出现一下错误,解决的方法,提示没有找到curses文件,并且提示要删除CMakeCache.txt文件。

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

wKiom1X4DGii1R5gAALrp7CPOV0054.jpg
wKioL1X4D1zjavgmAABdOfPVGGI067.jpg
wKioL1X4EFGTCFtOAABiW6tcVco937.jpg
wKiom1X4DjrRJYT_AABYJToYM90244.jpg
6.初始化授权库的文件所有者和所属组都是mysql用户
wKiom1X4JAqCLlquAABmempASAc529.jpg
wKioL1X4In-x5fINAABxcytxeoY623.jpg
wKioL1X4RP6yGIJHAAGsQP-TDRw641.jpg
7.创建mysql数据库的主配置文件

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

wKiom1X4PofT9FJBAABs5nHZ9m0592.jpg
wKiom1X4Q1DyE79yAAJaaktcR4o354.jpg
8.使用数据库管理员从数据库服务器本机登录(没密码)
wKioL1X4RhGTDoffAAKZrlpwO_U971.jpg
9.设置数据库管理员从本机登录的密码

wKiom1X4RJrivJUcAACEqsMcLWI934.jpg
wKioL1X4S-SBLpArAAB7wmZeg8I606.jpg
wKiom1X4SbbSv_q6AAB4Of4KulI893.jpg
修改数据库的密码

wKioL1X4TkygIeALAAB-h6DCFYc822.jpg
由于每次输入命令时,路径比较长为了方便把把mysql命令所在的路径添加到系统环境变量PATH里
wKiom1X4aH7zDcRGAACDIZej_wc326.jpg
wKioL1X4a5Cg9b-xAACpZLynpPI140.jpg
给源码mysql服务编写启动脚本,源码包中提供了启动脚本。
wKioL1X4dCiQudxoAAIdeHV3NmE677.jpg
wKiom1X4ckKBVmH3AABZNAc7t1k491.jpg
停止mysqld服务,重新启动mysqld服务
wKioL1X4dSazxq5xAAKl9vXXMog052.jpg
设置mysqldd随开机自启动

wKiom1X4c0GRxO4QAAEKnqcL0vI716.jpg
实验(三)

实验目的:安装源码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的扩展功能包,解压支持哈稀函数库软件包。
wKioL1X5HqjitDbKAABVLSdDxgE802.jpg
wKioL1X5HvWhu3tmAABGih8s88o008.jpg
wKioL1X5HyTim_p4AABU-NQp4KI781.jpg
2.解压支持安装处理中文各种编码之间的转换软件包,ibiconv-1.13.tar.gz
wKioL1X5H57zdBK3AABfG2H8TAc852.jpg
wKiom1X5HZDypw5SAABhFCK5kkI269.jpg
wKioL1X5H_ex0_QYAABsN5j5AAY695.jpg

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

wKiom1X5HtuAl5NbAABMmSDiXiI811.jpg
wKioL1X5IT6jD4g5AABSHM-H9EA268.jpg
4.安装PHP软件包解压

wKioL1X4hyaATMB5AABy0_ocSng037.jpg

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的支持。

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

wKioL1X6KCqSfm_CAAB2_Er1l5o350.jpg
wKioL1X6KNXQVzcaAAJEWSY0BKY437.jpg
wKiom1X6JxSSqqQ0AACd6wuHNJg916.jpg
wKioL1X6KZ2CWxEvAAHqSwXWklk295.jpg
wKiom1X6J5zjnBd7AABHSgz5m9A245.jpg
wKioL1X6KmaRvxfpAAIMosyCHNI918.jpg
wKiom1X6KGWy4Rk-AAAwm-hPux8950.jpg
wKioL1X6KyvTQgXKAAH7eAD0fuM858.jpg
wKioL1X6K5fAHlgdAAKhDAwddZU188.jpg
wKiom1X6KhrTFXZFAAMyPIGnPq0982.jpg
wKioL1X6LNyjWM7VAAMvT26UiJc610.jpg
对源码包进行编译和安装,编译时必须加上后面的选项。

wKioL1X6LYKQHDfaAABMyfP6Q3g230.jpg
wKiom1X6LaiAawlsAAEoMtCjvpQ252.jpg
出现这类错误表示,系统不知道xxx.so放在哪个目录下,这时候就要在/etc/ld.so.conf中加入xxx.so所在的目录。
wKioL1X6M1qATsqSAAE2nfyWtWI546.jpg
wKiom1X6MeOAzsEEAAFWPBzDr9Q696.jpg
wKioL1X6NKbwEAFzAABiWEap9WQ334.jpg
出现以下页面说明PHP安装成功。
wKioL1X6NQrR33thAAB2k-BxZws802.jpg
测试

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

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

wKiom1X6NJqD68bJAAFPi2tEa2w974.jpg
实验(四)
实验目的:nginx能够解释php页面
1.创建fast-cgi服务的主配置文件,在源码包 中有配置文件的模板,只要复制就可以(cgi通用网关接口)。
wKioL1X6OevSvAVJAAD7bpnziPM222.jpg
2.启动fast-cgi服务,在源码包中有启动脚本,只要复制启动脚本就可以,(作用管理php程序)
wKiom1X6OKfiGpQfAADAWUzCSq8372.jpg
wKioL1X6O0jx07tvAAE012Us86Q446.jpg
3.启动服务
wKioL1X6O9_iangBAAEQ2xaWZs8595.jpg

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

wKioL1X6PHXgDifaAAEmfbZt_RM251.jpg
让nginx支持fastcgi模块
wKiom1X6OtmyejzRAABrwlQQpsA467.jpg
wKiom1X6O7_iY2HFAABd8W7lHQQ613.jpg
检测nginx主配置文件是否有错误,重新启动服务。

wKioL1X6PiXC67EkAAHMPI5e4F0935.jpg
测试通过nginx服务器访问php代码文件
wKioL1X6PmnALCa2AACVfbvPhL8054.jpg
通过测试说明nginx可以解释php代码,如果想php支持那些功能模块,可以通过以下方法查看
wKiom1X6PLWwR_SnAADxn2mYud4588.jpg

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

wKioL1X6P13Cc4NGAALlEKy20DQ944.jpg


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

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

wKiom1X6P_aQwJOLAAB_1vmTDpo969.jpg
实验(五)
实验目的:LNMP+Memcached
1.安装memcached的环境包libevent-2.0.21-stable.tar.gz

wKioL1X6WfDhw485AABqSzhXdLM844.jpg
wKiom1X6V-aDgiWUAABWYlRfNxc837.jpg
wKioL1X6Wj-DJBHwAABjrBS62EQ010.jpg
wKiom1X6WFiSpNnqAABXqn7fJNo354.jpg
2.安装memcached软件包 memcached-1.4.5.tar.gz

wKiom1X6WLPjl2aDAABk9-_huZI751.jpg
wKioL1X6Wwui1dToAABYT6jq_dg843.jpg
wKiom1X6WPTjbVuIAABUR7e_z4M704.jpg
启动memcached服务
wKioL1X6YneSRw7GAAHBYRH9__c843.jpg
3.安装php连接memcached服务的连接工具,查看php支持那些模块,查看是否有memcache.so模块,memcache.so模块就是php连接memcached服务的连接工具。
wKioL1X6XozSRbe7AACEdaivCA4433.jpg
添加memcache.so模块,解压软件包memcache-2.2.5.tgz

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

wKiom1X6XxPytx-EAACeegnT6G4771.jpg
wKioL1X6YbmQiR2IAABVpHHY7HU953.jpg
wKiom1X6X7-gi0gaAADREGMNeSQ135.jpg
wKiom1X6YMrQXJdzAACto4hRDUA891.jpg
php程序运行时加载memcache.so模块
修改php的主配置文件php.ini,extension_dir指定模块存放的路径extension指定模块的名称。

wKiom1X6ZTKSlRFaAADTmjtsags714.jpg
wKioL1X6aELjON3kAADQ7Jb2ZCA522.jpg
wKiom1X6ZqmTPbNAAAB5uVb1hMc725.jpg
把管理memcache.so进程的服务重新启动fast-cgi
wKioL1X6aiORD1dAAAD-IdMNCeg542.jpg
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指定在网页目录去找网页文件。
wKioL1X6dbDA8D7JAAEPsJ34zaE658.jpg
wKiom1X6cIGRgwAjAAIDbyYrLvQ434.jpg
5.测试php能否连接memcached存取数据,memcache.so模块有连接命令 和存数据工具和取数据的工具。

编写一个php文件为mem.php用来存放数据和取数据,$memcache=new Memcache为生成一个类的对象,$memcache为对象名,$memcache->connect为 类的方法,$memcache->set,set为存数据,$var=$memcache->get,get为取数据,$var为取出来的值定义一个变量,echo $var为显示这个值。
wKioL1X6dkGi0-39AAByjGVg3sg471.jpg
wKiom1X6dzTiiP2PAAGbTYCb4zk292.jpg
wKioL1X6eY6j1hz2AACGBabEP2s375.jpg
出现以上界面说明php可以连接memcached存取数据。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-115408-1-1.html 上篇帖子: windows 环境下安装wampserver2.5 64位 下篇帖子: LNMP源码编译安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表