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

[CentOS] CentOS 6.0下搭建LAMP环境(源码安装)

[复制链接]
累计签到:4 天
连续签到:1 天
发表于 2015-8-19 10:16:52 | 显示全部楼层 |阅读模式
  原文地址: http://www.myhack58.com/Article/sort099/sort0102/2011/31794.htm
  

一、搭建环境:
1、CentOS 6.0虚拟机(最小安装)
2、putty
3、ssh shell  
  

二、准备工作:
1、源码包

autoconf
    ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.xz
freetype
    http://nchc.dl.sourceforge.net/project/freetype/freetype2/2.4.10/freetype-2.4.10.tar.bz2
gd
    http://casemanl.linux.tucows.com/files/gd-2.0.33.tar.gz
httpd
    http://www.apache.org/dist/httpd/httpd-2.2.22.tar.gz
jpegsrc
    http://www.imagemagick.org/download/delegates/jpegsrc.v8.tar.gz
libmcrypt
    http://nchc.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2
libpng
    http://download.sourceforge.net/libpng/libpng-1.5.13.tar.gz
libxml2
    http://down1.chinaunix.net/distfiles/libxml2-2.7.2.tar.gz
mysql
    http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.28-linux2.6-x86_64.tar.gz
ncurses
    http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.9.tar.gz
php
    http://museum.php.net/php5/php-5.2.17.tar.gz
phpMyAdmin
    http://nchc.dl.sourceforge.net/project/phpmyadmin/phpMyAdmin/3.5.3/phpMyAdmin-3.5.3-english.tar.gz
ZendOptimizer
    http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz
zlib
    http://zlib.net/zlib-1.2.7.tar.gz

2、安装gcc、gcc-c++编译器(yum安装)
若虚拟机能联网,直接输入命令yum install gcc和yum install gcc-c++;若不能联网,将centos光盘镜像挂载上,修改yum的本地源,使机器从本地源yum方式安装  

3、检查机器上是否已经安装了mysql、php、apache,使用命令rpm -qa mysql。若安装了,则使用命令rpm -e 包的全名 --nodeps卸载  

4、关闭selinux,清空防火墙规则  

5、开放80、3306、22端口
因为默认情况下,防火墙的80、3306、22端口是关闭的,这样的话对于客户机访问虚拟机上的web,会出现访问不到的现象。所以要开启。
service iptables stop
#/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT   //那是大写的英文字母I,不是数字1
#/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT
#/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
然后保存:
#/etc/rc.d/init.d/iptables save
重启防火墙
service iptables restart

6、在linux下建立目录lamp,存放上传的源码  

7、使用ssh shell将windows下下载好的14个源码包上传到/lamp  

8、解包
因为包很多,这里编写shell脚本/lamp/tar.sh进行解包
tar.sh

view plaincopy to clipboardprint?
#!/bin/sh  
cd /lamp  
ls *.tar.gz > ls.list  
  
for TAR in `cat ls.list`  
do   
     tar -zxvf $YAR  
done  
执行脚本tar.sh进行解包

9、将源码包*.tar.gz全都删除
三、安装过程:
1、为方便操作,编写安装脚本/lamp/lamp.sh进行安装
lamp.sh
view plaincopy to clipboardprint?
cd /lamp/libxml2-2.6.30  
./configure --prefix=/usr/local/libxml2/  
make   
make install  
   
cd /lamp/libmcrypt-2.5.8  
./configure --prefix=/usr/local/libmcrypt/  
make   
make install  
  
cd /lamp/libmcrypt-2.5.8/libltdl  
./configure --enable-ltdl-install  
make  
make install  
  
cd /lamp/zlib-1.2.3  
./configure  
make  
make install   
  
cd /lamp/libpng-1.2.31  
./configure --prefix=/usr/local/libpng/  
make  
make install  
  
mkdir /usr/local/jpeg6  
mkdir /usr/local/jpeg6/bin  
mkdir /usr/local/jpeg6/lib  
mkdir /usr/local/jpeg6/include  
mkdir -p /usr/local/jpeg6/man/man1  
cd /lamp/jpeg-6b  
./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static  
make  
make install  
  
cd /lamp/freetype-2.3.5  
./configure --prefix=/usr/local/freetype/  
make  
make install  
  
cd /lamp/autoconf-2.61  
./configure  
make   
make install  
   
cd /lamp/gd-2.0.35  
./configure --prefix=/usr/local/gd2/ --with-jpeg=/usr/local/jpeg6/ --with-freetype=/usr/local/freetype/  
make  
make install  
  
cd /lamp/httpd-2.2.9  
./configure --prefix=/usr/local/apache2/ --sysconfdir=/etc/httpd/ --with-included-apr --disable-userdir --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support  
make  
make install  
   
/usr/local/apache2/bin/apachectl start  
echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.sysinit  
  
cd /lamp/ncurses-5.6  
./configure --with-shared --without-debug --without-ada --enable-overwrite  
make   
make install  
  
groupadd mysql  
useradd -g mysql mysql  
cd /lamp/mysql-5.0.41  
./configure --prefix=/usr/local/mysql/ --with-extra-charsets=all  
make  
make install  
  
cp support-files/my-medium.cnf /etc/my.cnf  
/usr/local/mysql/bin/mysql_install_db --user=mysql  
chown -R root /usr/local/mysql  
chown -R mysql /usr/local/mysql/var  
chgrp -R mysql /usr/local/mysql  
  
/usr/local/mysql/bin/mysqld_safe  --user=mysql &  
  
cp /lamp/mysql-5.0.41/support-files/mysql.server /etc/rc.d/init.d/mysqld  
chown root.root /etc/rc.d/init.d/mysqld  
chmod 755 /etc/rc.d/init.d/mysqld  
chkconfig --add mysqld  
chkconfig --list mysqld  
chkconfig --levels 245 mysqld off  
   
cd /lamp/php-5.2.6  
./configure --prefix=/usr/local/php/ --with-config-file-path=/usr/local/php/etc/ --with-apxs2=/usr/local/apache2/bin/apx --with-mysql=/usr/local/mysql/ --with-libxml-dir=/usr/local/libxml2/ --with-jpeg-dir=/usr/local/jpeg6/ --with-freetype-dir=/usr/local/freetype/ --with-gd=/usr/local/gd2/ --with-mcrypt=/usr/local/libmcrypt/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets   
make  
make install  
  
cp php.ini-dist /usr/local/php/etc/php.ini  
echo "Addtype application/x-httpd-php .php .phtml" >> /etc/httpd/httpd.conf    /usr/local/apache2/bin/apachectl restart
  

2、配置mysql
cd /usr/local/mysql
bin/mysqladmin version //简单的测试
bin/mysqladmin varibles //查看所有mysql参数
bin/mysql -u root //没有密码可以直接登录本机服务器
mysql> DELETE FROM mysql.user WHERE Host='localhost' AND User='';
mysql> FLUSH PRIVILEGES;
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
3、安装zend加速器
mkdir /usr/local/php/etc
cp php.ini-dist /usr/local/php/etc/php.ini   //更改之前设定的php.ini的配置文件位置,安装zend要用
进入Zend包的目录
./install-tty
4、phpmyadmin的安装与配置
cd /lamp
cp -a  phpMyAdmin-3.0.0-rc1-all-languages  /var/www/html/phpmyadmin    //拷贝目录到指定位置(网站主目录/var/www/html下)并改名为phpmyadmin
cd /usr/local/apache2/htdocs/phpmyadmin/
cp config.sample.inc.php config.inc.php
进入/var/www/html/phpmyadmin
修改配置文件config.inc.php,将$cfg['blowfish_secret'] = '' 空格处填上登录phpmyadmin的密码,例如:$cfg['blowfish_secret'] = '123456'

四、常见错误及备注:
1、若shell脚本是从windows上传到linux上,而不是直接在linux上写的,可能会出现执行错误。解决办法见我的另一篇日志:《shell脚本在Linux下运行错误的解决方法》  2、对不能联网状态下yum本地安装的方法,见 《centos虚拟机不能联网状况下yum方式从本地安装软件包》

3、linux启动apache libltdl.so.3:cannot open shared object file:No such file or directory异常
执行ln -s /usr/local/lib/libltdl.so.3 /usr/lib/libltdl.so.3  即可
4、若出现Address already in use: make_sock: could not bind to address [::]:80异常
解决方法:reboot启动linux
5、若出现在linux终端执行clear或者top命令时出现:‘xterm’:unknown terminal type的错误,参考《在linux终端执行clear或top命令时出现:'xterm': unknown terminal type的错误》  6、文中源码包和tar.sh、lamp.sh脚本的下载    点击下载 提取码:dn9qqc4x

运维网声明 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-101021-1-1.html 上篇帖子: Linux空间PHP开发环境小白教程(LAMP) 下篇帖子: 一款LAMP兄弟连最近录制的《HTML5视频教程》此款视频不错哟!上吧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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