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

[经验分享] redhat5.8下配置LAMP架构

[复制链接]

尚未签到

发表于 2018-5-10 09:28:23 | 显示全部楼层 |阅读模式
  

  本篇博客介绍如何自行编译安装包,定制符合特定平台的LAMP架构,本测试操作均在虚拟机中实现(Redhat Enterprise Linux 5.8),内容涵盖编译安装httpd、MySQL、php

  

  准备:
  准备一台未安装Apaches、MySQL、php的虚拟机

  (作者使用的是初始化后的虚拟机)
  

  说明:
  本操作过程需要使用自行下载的软件包,软件包自行上网下载即可,建议大家进官网下载,下载rpm包时推荐使用以下两个站点进行下载:www.rpmfind.net、rpm.pbone.net
  

  一、编译安装httpd
  httpd安装顺序:apr --> apr-util --> pcre --> httpd
  执行安装操作前需要下载以下软件包:
  apr-1.5.2.tar.bz2
  apr-util-1.5.4.tar.bz2
  httpd-2.4.20.tar.bz2
  pcre-8.38.tar.gz
  httpd安装目录简单说明:
  htdocs:网页文件存储路径
  include:头文件
  logs:日志文件+pid文件
  man:帮助文档
  manual:手册
  module:模块
  对于configure各选项不了解的可以使用命令./configure --help | less查看说明,这里不进行解释
  1、编译安装apr

# tar xf apr-1.5.2.tar.bz2
# cd apr-1.5.2
# ./configure --prefix=/usr/local/apr
# make
# make install  2、编译安装apr-util
# tar xf apr-util-1.5.4.tar.bz2
# cd apr-util-1.5.4
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
# make
# make install  3、编译安装pcre
# tar xf pcre-8.38.tar.gz
# cd pcre-8.38
# ./configure --prefix=/usr/local/pcre
# make
# make install  4、编译安装httpd
# tar xf httpd-2.4.20.tar.bz2
# cd httpd-2.4.20
# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-rewrite --enable-ssl --enable-cgi --enable-cgid --enable-modules=most --enable-mods-shared=most --enable-mpms-shared=all --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
# make
# make install  5、测试httpd

# cd /usr/local/apache
# bin/apachectl start
# netstat -tnlp
# ls logs # 出现pid文件
# vim /htdocs/index.html # 修改主页内容  作者测试结果:
DSC0000.jpg

  6、修改pid文件存储路径至/var/run
# vim /etc/httpd/httpd.conf
# 添加记录:PidFile "/var/run/httpd.pid"  7、为httpd添加服务脚本(服务脚本见附件)
# vim /etc/rc.d/init/httpd
# ...
# chmod +x /etc/rc.d/init/httpd
# chkconfig --add httpd
# service httpd restart
# chkconfig --list httpd
# chkconfig --level 35 httpd on
# chkconfig --list httpd  8、导出httpd二进制文件
# vim /etc/profile.d/httpd.sh
# 添加内容:export PATH=$PATH:/usr/local/apache/bin
# 新开一个终端
# echo $PATH
# httpd -t  9、到这一步httpd的配置就完成了

  二、安装MySQL
  这里使用mysql的通用二进制包,需要注意的是,MySQL要求二进制包必须要解压至/usr/local/目录下,并且目录名必须为mysql
  作者使用的是mysql5.5,这里使用的压缩包为:mysql-5.5.50-linux2.6-i686.tar.gz
  1、解压压缩包至/usr/local
# tar xf mysql-5.5.50-linux2.6-i686.tar.gz -C /usr/local/
# cd /usr/local
# ls
# ln -sv mysql-5.5.50-linux2.6-i686 mysql
# cd mysql  2、创建mysql用户
# groupadd -r -g 306 mysql
# useradd -g 306 -r -u 306 mysql
# id mysql  3、创建逻辑卷用于存储mysql的数据
# fdisk /dev/sda
# 作者这里新建了一个8e类型20G的分区sda5
# partprobe /dev/sda
# pvcreate /dev/sda5
# vgcreate myvg /dev/sda5
# lvcreate -n mysql -L 5G myvg
# lvs
DSC0001.jpg

# mke2fs -j /dev/myvg/mysql
# mkdir /mysql
# vim /etc/fstab
# 添加记录:/dev/myvg/mysql /mysql ext3 defaults 0 0
# mount -a
# mount  3、创建mysql数据存储目录
# mkdir /mysql/data
# ll /mysql
# chown -R mysql.mysql /mysql/data
# chmod o-rx /mysql/data
# ls -ld /mysql/data  4、初始化数据库
# cd /usr/local/mysql/
#  chown -R mysql:mysql  .
# scripts/mysql_install_db --user=mysql --datadir=/mysql/data/
#  chown -R root  .  5、为mysql配置服务脚本
# cp support-files/mysql.server /etc/init.d/mysqld
# ll /etc/init.d/mysqld # 已经有执行权限了
# chkconfig --add mysqld
# chkconfig --list mysqld # 服务在当前级别已启用
# free -m  # 查看系统内存
# 作者内存为502,因此选择my-large.cnf作为mysql的配置文件
# cp support-files/my-large.cnf /etc/my.cnf
# cat /proc/cpuinfo
# 作者有两个处理器,因此将my.cnf中的并发线程数量设置为4
# vim /etc/my.cnf
# 修改内容:thread_concurrency = 4
# 并添加记录:datadir=/mysql/data
# service mysqld start
# netstat -tnlp # 查看3306端口是否处于监听状态  6、导出mysql二进制文件
# mysql
# vim /etc/profile.d/mysql.sh
# 添加内容:export PATH=$PATH:/usr/local/mysql/bin
# 新开一个终端
# mysql  7、导出mysql帮助文档
# vim /etc/man.config
# 添加记录:MANPATH /usr/local/mysql/man  8、导出mysql库文件
# vim /etc/ld.so.conf.d/mysql.conf
# 编辑:/usr/local/mysql/lib
# ldconfig -v  9、导出mysql头文件
# ln -sv /usr/local/mysql/include /usr/include/mysql
# ls /usr/include/mysql/  10、至此,mysql的安装就完成了
  三、编译安装php(将php安装为apache的模块)
  本操作需要用到的软件包:
  libmcrypt-2.5.7-5.el5.i386.rpm
  libmcrypt-devel-2.5.7-5.el5.i386.rpm
  mhash-0.9.2-6.el5.i386.rpm
  mhash-devel-0.9.2-6.el5.i386.rpm
  php-5.6.22.tar.bz2
  xcache-3.2.0.tar.bz2
  httpd安装选项简单说明:
  ./configure --help
  --prefix=/usr/local/php
  --with-mysql=/usr/local/mysql
  指明mysql安装路径
  --with-openssl
  支持openssl功能
  --with-mysqli=/usr/local/mysql/bin/mysql_config
  支持mysql的一种与php交互的接口
  --enable-mbstring
  支持多字节字符串
  --with-freetype-dir
  支持freetype(自由的,可移植的字体库)的功能rpm -qi freetype
  --with-jpeg-dir
  支持jpeg图片
  --with-png-dir
  支持png图片
  --with-zlib
  支持zlib压缩库
  --with-libxml-dir=/usr
  表明拓展标记语言库路径
  --enable-xml
  支持xml
  --enable-sockets
  支持基于套接字的通信
  --with-apxs2=/usr/local/apache/bin/apxs
  指明将php编译为apache的模块
  --with-mcrypt
  支持额外的加密库
  --with-config-file-path=/etc
  指明php的主配置文件存放路径
  --with-config-file-scan-dir=/etc/php.d
  指明php的片段配置文件存储路径
  --with-bz2
  支持bz2压缩库
  --enable-maintainer-zts
  apache的mpm模式为work或event时需要使用,为prefork时不使用
  1、解压压缩包并安装php
# httpd -M # 查看httpd的mpm模式
# 作者的httpd的mpm模式为event(默认)
# rpm -ivh *.rpm # 安装上述四个rpm包
# tar xf php-5.6.22.tar.bz2
# cd php-5.6.22
# ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl \
--with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir \
--with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml  \
--enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt  \
--with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2  \
--enable-maintainer-zts
# make
# make install  2、为php添加配置文件
# cd php-5.6.22
# cp php.ini-production /etc/php.ini  3、结合apache、php
# vim /etc/httpd/httpd.conf
# 使apache能够处理php结尾的页面文件
# 添加:
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
# 修改DirectoryIndex选项
# 修改为:DirectoryIndex index.php index.html
# httpd -t
# service httpd restart
# cd /usr/local/apache/htdocs/
# mv index.html index.php
# vim index.php
# 添加内容:
<?php
phpinfo();
?>  # 测试
DSC0002.jpg

  4、测试连接php、mysql
# vim index.php
# 添加内容
<?php
$conn=mysql_connect('localhost','root','');
if($conn)
   echo "Success...";
else
   echo "Failure...";
?>  测试:
DSC0003.jpg

# service mysqld stop  测试:
DSC0004.jpg

  5、安装xcache(php的扩展功能)

# cd /root/download
# tar xf xcache-3.2.0.tar.gz
# cd xcache-3.2.0
# /usr/local/php/bin/phpize
# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config
# make
# make install
# mkdir /etc/php.d
# cp xcache.ini /etc/php.d/
# vim /etc/php.d/xcache.ini
# 修改xcache.count=处理器数量
# service httpd restart
# vim /usr/local/apache/htdocs/index.php
# 编辑内容
<html><body><h1>It works!</h1></body></html>
<?php
$conn=mysql_connect('localhost','root','');
if($conn)
   echo "Success...";
else
   echo "Failure...";
phpinfo();
?>  6、测试,如下图所示表明安装成功
DSC0005.jpg

  7、至此LAMP架构算是搭建完成了,需要实现什么功能时,编辑httpd的配置文件启用相应的模块及包含相应的配置文件即可,能力有限,仅将操作流程大致的叙述了一通,详细的大概就需要自行查阅相关资料了,还望见谅,疏漏处还望指出


附件:http://down.51cto.com/data/2367780

运维网声明 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-457919-1-1.html 上篇帖子: Redhat介绍 下篇帖子: RedHat6.3 zimbra 安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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