免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2084 | 回复: 2
打印 上一主题 下一主题

(转)CentOS6环境下编译部署LAMP平台 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-02-03 17:26 |只看该作者 |倒序浏览
(转)CentOS6环境下编译部署LAMP平台








本文描述在Linux环境下搭建LAMP平台,所用软件均为最新版,CentOS6.0+Apache2.2.21+MySQL5.5.17+PHP5.3.8。

L部分就不用说了吧,下面按照AMP的顺序挨个操作。


0、准备工作

检查依赖包是否安装:

# rpm -qa zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel
关闭防火墙

# service iptables stop;
关闭selinux

# vi /etc/selinux/config
修改

SELINUX=enforcing
为:

SELINUX=disabled
安装libiconv

  
# wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.10.tar.gz

# tar xvfz libiconv-1.10.tar.gz

# cd libiconv-1.10

# ./configure --prefix=/usr/local/webserver/libiconv

# make && make install

安装cronolog日志轮循

# wget http://cronolog.org/download/cronolog-1.6.2.tar.gz

# tar xvfz cronolog-1.6.2.tar.gz

# cd cronolog-1.6.2

# ./configure --prefix=/usr/local/webserver/cronolog

# make && make install

1、安装apache
apache官网:http://httpd.apache.org/download.cgi


安装步骤如下:

# wget http://mirror.bjtu.edu.cn/apache//httpd/httpd-2.2.21.tar.gz

# tar xvfz httpd-2.2.21.tar.gz

# cd httpd-2.2.21

# ./configure \

--prefix=/usr/local/webserver/apache2.2.21 \

--enable-deflate \

--enable-headers \

--enable-modules=so \

--enable-so \

--with-mpm=worker \

--enable-rewrite \

--enable-cgi

# make

# make install

2、安装mysql

MySQL官网:http://dev.mysql.com/downloads/

注,本步非必须,如果php需要连接mysql数据库,那么就必须在该server端安装mysql客户端(当然直接装mysql服务端也是可以的),为了简便起见,这里直接选择rpm方式安装mysql的client,源码编译方式可以参考三思笔记:源码编译方式安装MySQL5.5

# rpm -ivh MySQL-client-5.5.17-1.linux2.6.x86_64.rpm

3、安装php


PHP官网:http://www.php.net/downloads.php

安装步骤如下:

# wget http://cn2.php.net/get/php-5.3.8.tar.gz/from/this/mirror

# tar xvfz php-5.3.8.tar.gz

# cd php-5.3.8

./configure \

--prefix=/usr/local/webserver/php \

--with-apxs2=/usr/local/webserver/apache2.2.21/bin/apxs \

--with-mysql=/usr/local/mysql55 \

--with-freetype-dir \

--with-gd \

--with-zlib \

--with-jpeg-dir \

--with-png-dir \

--with-iconv=/usr/local/webserver/libiconv \

--enable-short-tags \

--enable-sockets \

--enable-zend-multibyte \

--enable-soap \

--with-openssl \

--enable-mbstring \

--enable-static \

--enable-gd-native-ttf \

--with-curl \

--with-xsl \

--enable-ftp \

--with-libxml-dir

# make

# make install

# cp php.ini-production /usr/local/webserver/php/lib/php.ini

提示:编译过程中可能会提示:

configure: error: libjpeg.(a|so) not found.

configure: error: libpng.(a|so) not found.

configure: error: libXpn.(a|so) not found.
这类错误,如果确认系统安装了这些包(可以通过rpm -qa查询),那么一般是由于相应的链接文件未被正确找到导致的,对于这种情况,有两种解决方案:

1、重新源码编译安装这些包,而后在configure时通过相应参数指定具体的目录

2、可以手动通过rpm -ql查看这些包的安装路径,而后将相应的so文件复制(rpm安装可能会存在于/usr/lib64下)到/usr/lib中,然后再重新执行configure即可。


如果编译过程中遇到下列信息:

PEAR package PHP_Archive not installed: generated phar will require PHP's phar extension be enabled.
这说明没有安装PEAR,解决方案有两种:

1、./configure时附加--without-pear

2、从http://pear.php.net/go-pear下列未打包的pear安装包并执行,步骤如下:

# wget http://pear.php.net/go-pear.phar

# /usr/local/webserver/php/bin/php go-pear.phar


4、安装php扩展

本步非必须,安装memcache客户端是为了使PHP能够连接Memcache,如果没有这项需求,可以不安装。

官网:http://pecl.php.net/package/memcache

安装步骤如下:

# wget http://pecl.php.net/get/memcache-2.2.6.tgz

# tar xvfz memcache-2.2.6.tgz

# cd memcache-2.2.6

# /usr/local/webserver/php/bin/phpize

# ./configure --with-php-config=/usr/local/webserver/php/bin/php-config

# make

# make install

5、配置apache
Apache的定制性比较强,以下所做改动仅做演示,实际上即使不做任何改动,apache也是可以直接启动的。


进入目录:

# cd /usr/local/webserver/apache2.2.21/conf/

# vi httpd.conf
配置监听端口,默认为80,一般在第40行:

Listen 80
修改apache进程所属用户,一般在65行:

User apache

Group apache
修改机器名,对于网站可以写成域名的形式,一般在第98行

ServerName 127.0.0.1:80
设置访问目录时的默认文件名,一般在165行:

<IfModule dir_module>

    DirectoryIndex index.html index.php

</IfModule>
启用虚拟主机:

Include conf/extra/httpd-vhosts.conf

而后可以编辑conf/extra/httpd-vhosts.conf文件,对网站服务的解析做进一步的设置:

# vi extra/httpd-vhosts.conf
增加下列内容:

<VirtualHost *:80>

    ServerAdmin webmaster@5ienet.com

    DocumentRoot "/data/webserver"

    ServerName www.5ienet.com

    ErrorLog "logs/dummy_error_log"

    CustomLog "|/usr/local/sbin/cronolog /app/logs/%Y/%m/access_%Y%m%d.log" combined env=!IMAG

    CustomLog "|/usr/local/sbin/cronolog /app/logs/%Y/%m/%d/access_%Y%m%d%H.log" combined

</VirtualHost>
注,此处可配置性极强,包括日志输出,查询重写等均可在此定义。


配置完成后,可以通过apachectl -t检查配置文件格式是否有误:

# /usr/local/webserver/apache2.2.21/bin/apachectl -t

Syntax OK
如无问题,启动apache服务:

# /usr/local/webserver/apache2.2.21/bin/apachectl start

论坛徽章:
0
2 [报告]
发表于 2012-02-03 17:27 |只看该作者
谢谢分享

论坛徽章:
0
3 [报告]
发表于 2012-03-01 12:01 |只看该作者
谢谢分享                       
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP