搭建LAMP

RPM包和源码包存放位置 /usr/local/src

源码包编译安装位置 /usr/local/apache
                 /usr/local/mysql
                 /usr/local/php

默认MySQL 数据库位置 /usr/local/mysql/var

默认网站根目录 /usr/local/apache/htdocs

2 LAMP环境搭建

搭建的工作包括 mysql、apache、PHP。可以按照这个顺序来搭建环境。

获取mysql
http://mirror.provenscaling.com/mysql/enterprise/source/5.0/
这里使用 mysql-5.0.70.tar.gz

获取apache
http://www.apache.org/dist/httpd/
这里使用 httpd-2.2.24.tar.gz

获取php
http://php.net/downloads.php
这里使用 php-5.4.16.tar.gz

把下载后的 *.tar.gz 文件全部放在 /usr/local/src 下面
cd /usr/local/src (定位到安装包目录)


安装 mysql
tar -zxvf mysql-5.0.70.tar.gz (解压缩)

cd mysql-5.0.70 (进入解压缩后生成的目录)

./configure --prefix=/usr/local/mysql

make

make install

useradd mysql //添加 mysql 用户,用户名为mysql,密码为空。新装mysql有一个root用户密码为空,和linux上的root账号没关系

cd /usr/local/mysql

bin/mysql_install_db --user=mysql

chown -R mysql . //设置权限,注意后面有一个点 "."

chgrp -R mysql .

chown -R mysql var

cp share/mysql/my-medium.cnf /etc/my.cnf

cp share/mysql/mysql.server /etc/rc.d/init.d/mysqld //开机启动

chmod 755 /etc/rc.d/init.d/mysqld

chkconfig --add mysqld

/etc/rc.d/init.d/mysqld start // 启动 MySQL (mysql 安装完毕 )

设置从外网登陆mysql
cd /usr/local/mysql  //进到安装目录下

bin/mysql -uroot -p //原命令为mysql -u用户名 -p密码,这里新安装mysql的root密码是空的
会提示输入密码,直接按回车进入mysql

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
允许使用用户名root密码root从任何主机连接到mysql服务器
第一个root为用户名第二个root为密码,不修改mysql的root账号和密码,原root账号密码为空则还是空
"%"为通配符,代表允许所有ip,想指定主机访问,把"%"换成该主机ip

exit //退出mysql
最好重启下linux
需要外网访问时,设置linux的防火墙public区域允许mysql服务


安装Apache

tar -zxvf httpd-2.2.24.tar.gz

cd httpd-2.2.24

./configure --prefix=/usr/local/apache --enable-module=so --enable-module=rewrite --enable-shared=max

make

make install

/usr/local/apache/bin/apachectl -k start (启动apache服务)

用浏览器打开 http://127.0.0.1/ 如果可以访问则说明apache安装成功。

安装PHP

tar -zxvf php-5.4.16.tar.gz

cd php-5.4.16

./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache/bin/apxs --enable-pcntl

make

make install

cp php.ini-development /usr/local/php/lib/php.ini

配置httpd.conf

vi /usr/local/apache/conf/httpd.conf

在httpd.conf文件中,其他AddType之后添加(也可以在最后一行后添加)
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

确保文件中有以下一句话,没有就自己添加在所有LoadModule之后。(也可以在最后一行后添加)
LoadModule php5_module modules/libphp5.so
若存在loadModule php4_module modules/libphp4.so请将此句注释掉因为我们安装的是php5


找到 DirectoryIndex index.html 并改成
DirectoryIndex index.php index.html

启动apache服务,最好重启电脑
/usr/local/apache/bin/apachectl -k start


在 /usr/local/apache/htdocs/ 下添加 phpinfo.php 文件
更改权限
chmod -R 777 /usr/local/apache/htdocs

用浏览器打开 http://127.0.0.1/phpinfo.php

再创建 testdb.php
增加下面几行,并保存。
<?php
$link=mysql_connect('localhost','mysql','');//一开始添加的mysql用户名:mysql,密码为空
if(!$link) echo "fail";
else echo "success";
mysql_close();
?>

如果输出success表明php与mysql连接成功
LAMP环境搭建完毕
需要外网访问时,设置linux的防火墙public区域允许http服务


============================================安装过程可能产生的错误


#./configure (于检查系统是否有编译时所需的库,以及库的版本是否满足编译的需要等安装所需要的系统信息。为随后的编译工作做准备。)
提示错误如下:(没有GCC编译器环境)
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking whether make sets $(MAKE)... yes
checking for gcc... no
checking for cc... no
checking for cc... no
checking for cl... no
configure: error: no acceptable C compiler found in $PATH
解决办法:
安装
yum -y install gcc





安装mysql,在./configure时出现错误:error: No curses/termcap library found的解决办法
原因:
缺少ncurses安装包
解决办法:
下载安装相应软件包
如果你的系统是RedHat系列:
yum list|grep ncurses
yum -y install ncurses-devel
yum install ncurses-devel
 
如果你的系统是Ubuntu或Debian:
apt-cache search ncurses
apt-get install libncurses5-dev





源码安装  MYSQL ,,MAKE  时 报错。
../depcomp: line 512: exec: g++: not found
make[2]: *** [my_new.o] 错误 127
make[2]: Leaving directory `/tmp/lamp/mysql-5.0.70/mysys'
make[1]: *** [all-recursive] 错误 1
make[1]: Leaving directory `/tmp/lamp/mysql-5.0.70'
make: *** [all] 错误 2
[root@localhost mysql-5.0.70]#

解决办法:
yum install -y gcc-c++



安装PHP时报错
出现如下错误提示:
Sorry, I cannot run apxs. Possible reasons follow:

1. Perl is not installed

2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs

3. Apache was not built using --enable-so (the apxs usage page is displayed)

The output of /usr/local/apache/bin/apxs follows:

./configure: /usr/local/apache/bin/apxs: not found

configure: error: Aborting

表明没有安装perl
解决办法:
下载perl进行安装(去http://www.perl.com下载最新版本,从别的网站下载了个5.8版本make时死活过不去)
同样放在 /usr/local/src 下
cd /usr/local/src
tar xzvf perl-5.18.0.tar.gz
cd perl-5.18.0
sh Configure -de
make
make test
make install

安装完perl后还是提示上述错误,
去apche的源程序中(一开始解压缩apache后得到的文件夹中)又来了一次下面的动作
配置
./configure --prefix=/usr/local/apache --enable-module=so --enable-module=rewrite --enable-shared=max
编译
make
安装
make install






然后进php解压缩文件夹中重新 configure 时出现如下错误:

configure: error: xml2-config not found. Please check your libxml2 installation.

同perl在网上找到libxml2-2.6.31.tar.gz放到 /usr/local/src 下
安装libxml2
cd /usr/local/src
tar zxvf libxml2-2.6.31.tar.gz
cd libxml2-2.6.31
./configure
make
make install

安装libxml2后,重新进入php解压缩文件夹configure





如果出现错误提示:

configure: error: Please specify the install prefix of iconv with --with-iconv=

下载libiconv-1.10.tar.gz
cd /usr/local/src
tar zxvf libiconv-1.10.tar.gz
cd libiconv-1.10
./configure
make
make install

注意:开始的时候安装的 libiconv-1.11结果安装完成后,重起启动时出现问题(用户就是登录不去,不是是系统的bug还是软件的兼容性不好,后来用单用户进入,删除了/usr/local/下的libiconv相关文件才得以登录系统)

 

posted @ 2013-06-16 20:36  风吹屁股凉冰冰  阅读(556)  评论(1编辑  收藏  举报