您的当前位置:首页正文

【LAMP搭建】

来源:九壹网
LAMP搭建

一、准备工作

1、rhel6.3最小化安装,开发工具 安装vmware-tools

mount /dev/cdrom/ /media/rhel6 cd /media/rhel6

tarxvzf VMwareTools-9.2.0-799703.tar.gz -C /usr/src cd /usr/src/vmware-tools-distrib/ ./vmware-install.pl umount /dev/cdrom/

mount /dev/cdrom/ /media/rhel6

2、安装yum源(本地光盘) 挂载光盘

首次挂载要创建目录

mkdir /media/rhel6

挂载

mount /dev/cdrom /media/rhel6

开机后失效

光盘(分区)(设备)开机自动挂载

vi /etc/fstab

/dev/cdrom/media/rhel6iso9660defaults 0 0

df–T

查看文件系统类型

iso9660就是文件类型

编辑yum配置文件。必须*.repo结尾

vi /etc/yum.repos.d/rhel-source.repo yum仓库配置: [rhel-source]

name=Red Hat Enterprise Linux baseurl=file:///media/rhel6 enabled=1 gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

导入密钥

rpm --import

/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

清空yum缓存

yum -y install system-config-network-tui

二、进入LAMP安装

【1】、MySQL安装

yum -y installncursesncurses-devel(mysql所需)

【mysql-5.1.45.tar.gz】

tarxvzf mysql-5.1.45.tar.gz -C /usr/src/

tar包解压

cd /usr/src/mysql-5.1.45/

进入解压后的目录

groupaddmysql

创建一个mysql组

useradd -g mysqlmysql

创建一个mysql用户并加入mysql组

./configure --prefix=/usr/local/mysql \\ --with-charset=utf8 --with-extra-charsets=all

编译前的环境配置

./configure --help | more查看命令的帮助 more以分页显示

make

编译

make install

编译安装

cp support-files/my-medium.cnf /etc/my.cnf

在/usr/src/mysql-5.1.45/support-files里面有很多配置文件 选择my-medium.cnf中型配置文件复制到/etc/my.cnf

cd /usr/local/mysql

切换到安装目录

chown -R mysql .

更改属主方便给后面的一条命令

chown -R mysql .

更改属组

以上两条命令也可以合成一条chown -R root:root .

bin/mysql_install_db --user=mysql

安装数据库--并以mysql用户

chown -R root .

改回属主为root

chown -R mysqlvar

把数据库var文件该回属主为mysql

cp

/usr/src/mysql-5.1.45/support-files/mysql.server

/etc/init.d/mysqld

安装mysqld启动脚本

chmod 755 /etc/init.d/mysqld

更改mysqld目录权限

chkconfig --add mysqld

添加成系统服务

chkconfig --level 35 mysqld on

设置在运行级别35状态下自动运行 chkconfig --list查看系统服务的启动情况

servicemysqld start

启动

/usr/local/mysql/bin/mysqladmin -u root password mysql5

设置密码(最后的mysql5是密码)

vi /etc/profile

全局环境(变量)配置文件,export变量设置为全局变量 !在export... 行之前加一行

PATH=$PATH:/usr/local/mysql/bin/

source /etc/profile

重新读取这个文件source命令

echo \"/usr/local/mysql/lib/mysql\" >> /etc/ld.so.conf

把mysql库文件添加到系统库的搜索路径当中方便其他程序

对他的调用

ldconfig -v

使上面的命令生效

ln -s /usr/local/mysql/bin/* /usr/local/bin

软连接

ln -s /usr/local/mysql/lib/mysql/

ln -s /usr/local/mysql/lib/mysql/* /usr/lib/ ln -s /usr/local/mysql/lib/mysql/* /usr/lib64

附:在安装时出现如下错误:

cannot remove `libtoolT': No such file or directory

.这时直接打开 configure,把 $RM \"$cfgfile\" 那行删除掉,重新再运行 ./configure 就可以 不过删除没删除,好像对编译没什么影响。 可以先执行:autoreconf --force --install 在执行./configure就可以。 错误1

编译Mysql时configure: error: No curses/termcap library found 的错误解决方法 安装ncurses、ncurses-devel相关软件包 错误2

../depcomp: line 571: exec: g++: not found ../depcomp: line 571: exec: g++: not found make[1]: *** [my_new.o] 错误 127

make[1]: Leaving directory `/home/justme/software/mysql-5.1.30/mysys' make: *** [all-recursive] 错误 1

下载安装gcc-c++-4.1.2-33.i386.rpm(yum intallgcc-c++)

【mysql-5.5.28安装】一般不用这个版本

mkdir /media/rhel6 创建目录

mount /dev/cdrom /media/rhel6 挂载光盘

vi /etc/yum.repos.d/rhel-source.repo

yum仓库配置: [rhel-source] name=Red Hat Enterprise Linux baseurl=file:///media/rhel6 enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 导入密钥 yum clean all 清空yum缓存

yum install cmake make -y

yum install -y gccgcc-c++ autoconf bison automakezlib* fiex* libxml* ncurses-devel mkdir lamp 创建目录 上传软件包文件 groupaddmysql 添加组

useradd -r -g mysqlmqsql 创建一个mysql用户并加入mysql组 cd /root/lamp 进入软件包目录

tarxvzf mysql-5.5.28.tar.gz -C /usr/src/ 解压tar软件包

cd /usr/src/mysql-5.5.28/ 进入源代码目录 cmake . 运行 make

make install

cd /usr/local/mysql chown -R mysql . chgrp -R mysql .

scripts/mysql_install_db --user=mysql chown -R root .

chown -R mysql data

cp support-files/my-medium.cnf /etc/my.cnf vi /etc/my.cnf !

[client]

socket = /var/lib/mysql/mysql.sock [mysqld]

socket = /var/lib/mysql/mysql.sock datadir=/var/lib/mysql

user=mysql

symbolic-links=0 !

cp support-files/mysql.server /etc/init.d/mysqld servicemysqld start

vi /etc/profile 全局环境(变量)配置文件,export变量设置为全局变量 !在export... 行之前加一行PATH=$PATH:/usr/local/myaql/bin/ source /etc/profile 重新读取这个文件source命令 mysqladmin -u root password mysql5 设置密码

cp /usr/src/mysql-5.1.45/support-files/mysql.server /etc/init.d/mysqld 安装mysqld启动脚本 chmod 755 /etc/init.d/mysqld 更改mysqld目录权限 chkconfig --add mysqld 添加成系统服务

chkconfig --level 35 mysqld on 设置在运行级别35状态下自动运行

./bin/mysqladmin -u root password mysql5(密码) 设置密码

/usr/local/myaql/bin/mysql -u root -p 进入mysql

PATH=$PATH:/usr/local/myaql/bin/ 加入bin的搜索路径

echo \"/usr/local/mysql/lib/mysql\" >> /etc/ld.so.conf 把mysql库文件添加到系统库的搜索路径当中方便其他程序对他的调用 ldconfig -v 使上面的命令生效

【2】、Apache安装

yum -y install openssl-devel(apache所需) 【apachehttpd-2.2.21.tar.gz】 yum -y remove httpd

用yum删除系统自带的httpd

tarxvzf apachehttpd-2.2.21.tar.gz -C /usr/src/ 解压

cd /usr/src/httpd-2.2.21/

进入解压目录

./configure--prefix=/usr/local/apache2--enable-so --enable-rewrite

正常安装lamp的apache按照上面的命令就好了

如果要安装postfix则按下面的命令: ./configure --prefix=/usr/local/apache2 \\ --enable-so --enable-rewrite --enable-ssl \\ --enable-suexec --with-suexec-caller=daemon make 编译

编译前的环境配置

make install

编译安装

/usr/local/apache2/bin/apachectl start

启动Apache服务

echo \"/usr/local/apache2/bin/apachectl start\" >>/etc/rc.local

开机启动

netstat -tnlp

查看80端口

echo \"/usr/local/apache2/bin/apachectl\" >>/etc/rc.local 【3】、PHP安装 GD库的安装:

1、【libxml】libxml2-2.7.8.tar.gz

tarxvzf libxml2-2.7.8.tar.gz -C /usr/src/

解压

cd /usr/src/libxml2-2.7.8/

进目录

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

编译前环境配置

错误提示不用管:/bin/rm: cannot remove `libtoolT': No such file or directory Done configuring

make

编译

make install

编译安装

echo \"/usr/local/libxml/lib/\">>/etc/ld.so.conf

把libxml库文件添加到系统库的搜索路径当中方便其他程序对他的调用 ldconfig -v

2、【zlib】zlib-1.2.5.tar.gz

tarvxzf zlib-1.2.5.tar.gz -C /usr/src/

解压

cd /usr/src/zlib-1.2.5

进目录

编译前的环境配置

CFLAGS=-fPIC ./configure --libdir=/usr/lib64 --prefix=/usr/local/zlib

make 编译

make install

编译安装

3、【jpeg】jpegsrc.v8c.tar.gz

tarxvzf jpegsrc.v8c.tar.gz -C /usr/src/

解压

cd /usr/src/jpeg-8c/

进目录

mkdir /usr/local/jpeg mkdir /usr/local/jpeg/include mkdir /usr/local/jpeg/lib mkdir /usr/local/jpeg/bin

mkdir /usr/local/jpeg/man/man1 -p

cp /usr/share/libtool/config/config.guess . cp /usr/share/libtool/config/config.sub .

./configure --prefix=/usr/local/jpeg --enable-shared --enable-static

makelibdir=/usr/lib64 makelibdir=/usr/lib64 install make install

4、【libpng】libpng-1.5.12.tar.gz tarxvzf libpng-1.5.12.tar.gz -C /usr/src/ cd /usr/src/libpng-1.5.12/

./configure --prefix=/usr/local/libpng make make install

5、【freetype】freetype-2.4.10.tar.gz

tarzxvf freetype-2.4.10.tar.gz -C /usr/src/ cd /usr/src/freetype-2.4.10/

./configure --prefix=/usr/local/freetype/ make make install

6、【libart_lgpl】

tarzxvf libart_lgpl-2.3.17.tar.gz -C /usr/src/ cd /usr/src/libart_lgpl-2.3.17/

./configure --prefix=/usr/local/libart/--disable-shared(可不加) make make install

7、【gettext】gettext-0.18.1.1.tar.gz tarzxvf gettext-0.18.1.1.tar.gz -C /usr/src/ cd /usr/src/gettext-0.18.1.1/

./configure --prefix=/usr/local/gettext/ make make install

8、【fontconfig】fontconfig-2.10.1.tar.gz tarzxvf fontconfig-2.10.1.tar.gz -C /usr/src/ cd /usr/src/fontconfig-2.10.1/

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/libxml/lib/pkgconfig exportPKG_CONFIG_PATH=/usr/local/freetype/lib/pkgconfig:$PKG_CONFIG_PATH ./configure --prefix=/usr/local/fontconfig --enable-libxml2

make make install

9、【GD】zxvf gd-2.0.36RC1.tar.gz

在确保以上插件安装完之后,再进行GD的安装,注意各个插件的安装路径

tarzxvf gd-2.0.36RC1.tar.gz -C /usr/src/ cd /usr/src/gd-2.0.36RC1/

./configure --prefix=/usr/local/gd --with-zlib=/usr/local/zlib/ --with-png=/usr/local/libpng/

--with-jpeg=/usr/local/jpeg/

--with-freetype=/usr/local/freetype/ --with-libart=/usr/local/libart/ --with-gettext=/usr/local/gettext/ --with-libxml=/usr/local/libxml/ --with-fontconfig=/usr/local/fontconfig/ make make install

echo \"/usr/local/gd/lib/\">>/etc/ld.so.conf

把gd库文件添加到系统库的搜索路径当中方便其他程序对他的调用 ldconfig -v

10、【Curl】

tarzxvf curl-7.27.0.tar.gz -C /usr/src/

cd /usr/src/curl-7.27.0/

./configure --prefix=/usr/local/curl make make install

echo \"/usr/local/curl/lib/\">>/etc/ld.so.conf

ldconfig -v

11、【libmcrypt】

tarxzvf libmcrypt-2.5.7.tar.gz -C /usr/src/ cd /usr/src/libmcrypt-2.5.7/ mkdir -p /usr/local/libmcrypt

./configure --prefix=/usr/local/libmcrypt/ make make install

ln -s /usr/local/libmcrypt/lib/libmcrypt* /usr/lib ln -s /usr/local/libmcrypt/lib/libmcrypt* /usr/lib64 12、【mhash】

tarzxvf mhash-0.9.9.9.tar.gz -C /usr/src/ cd /usr/src/mhash-0.9.9.9/ ./configure make

make install

ln -s /usr/local/lib/libmhash.* /usr/lib ln -s /usr/local/lib/libmhash.* /usr/lib64 13、【mcrypt】

tarzxvf mcrypt-2.6.8.tar.gz -C /usr/src/ cd /usr/src/mcrypt-2.6.8/ ./configure

--prefix=/usr/local/mcrypt

--with-libmcrypt-prefix=/usr/local/libmcrypt/ make make install 14、【其他】

echo \"/usr/local/freetype/lib/\">>/etc/ld.so.conf echo \"/usr/local/jpeg/lib/\">>/etc/ld.so.conf ldconfig -v

vi /etc/ld.so.conf

添加以下几行到此文件中。 /usr/local/zlib/lib /usr/local/freetype/lib /usr/local/jpeg/lib

并执行ldconfig命令,使用动态装入器装载找到共享库

15、【PHP】php-5.3.6.tar.gz tarzxvf php-5.3.6.tar.gz -C /usr/src/ cd /usr/src/php-5.3.6/

!!!少一个mysqli的选项否则phpmyadmin无法正常工作 ./configure \\

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

--with-apxs2=/usr/local/apache2/bin/apxs \\ --with-jpeg-dir=/usr/local/jpeg/ \\ --with-png-dir=/usr/local/libpng/ \\ --with-zlib-dir=/usr/local/zlib/ \\ --with-gd=/usr/local/gd \\ --enable-xml \\ --enable-gd-native-ttf \\

--with-freetype-dir=/usr/local/freetype/ \\ --with-mysql=/usr/local/mysql/ \\ --with-curl=/usr/local/curl/ \\ --with-gettext=/usr/local/gettext/ \\ --enable-sockets \\ --enable-mbstring \\

--with-mcrypt=/usr/local/libmcrypt \\

--with-libxml-dir=/usr/local/libxml/ make make install

对php编译选项的解释:

--prefix=/usr/local/php //指定PHP的安装目录 --with-apxs2=/usr/local/apache2/bin/apxs //支持Apache模块 --with-mysql=/usr/local/mysql //支持MySQl --with-gd=/usr/local/gd //支持GD库

--with-jpeg-dir=/usr/local/libjpeg //激活对 jpeg-6b 的支持 --with-png-dir //激活对png的支持 --with-zlib-dir=/usr/local/zlib //激活对zlib的支持

--enable-gd-native-ttf //激活对本地 TrueType 字符串函数的支持 --with-ttf //激活对FreeType 1.x 的支持 --enable-xml //支持XML

--enable-sockets //支持套接字

安装PHP常见错误解决

(1)error: libjpeg.(a|so),error: libpng.(a|so) not found,error: Cannot find ldap 那么记得要在configure前执行如下的命令: cp -frp /usr/lib64/libjpeg.* /usr/lib/

到phpmyadmin文件夹里找config.inc.php

然后找

$cfg['Servers'][$i]['extension']='mysql'; 如果有上面那句,就找

$cfg['Servers'][$i]['extension']='mysqli'; 把这句注释掉 如果没有$cfg['Servers'][$i]['extension']='mysql';这句,就$cfg['Servers'][$i]['extension']='mysqli';改成$cfg['Servers'][$i]['extension']='mysql';

cp php.ini-dist /usr/local/php/lib/php.ini (之前版本)

复制PHP的配置文

cp php.ini-development /usr/local/php/lib/php.ini(php5.3.6) 修改配置文件选项

default_charset = \"utf-8”(772) 修改apache配置文件httpd.conf

vi /usr/local/apache2/conf/httpd.conf

(1)在#AddType application/x-tar.tgz下加一行: AddType application/x-httpd-php .php

(2)找到DirectoryIndex index.html在后面添加index.php (3)在#ServerName www.example.com:80下加一行 ServerName feiyang.qwfy.cn:80 vi /etc/hosts加入一行

192.168.60.70 feiyang.qwfy.cnnfeiyag

重启动apache

/usr/local/apache2/bin/apachectlstop /usr/local/apache2/bin/apachectl start

16、【测试】

1、测试php与apache的协调性

在 /usr/local/apache2/htdocs目录下建立一个test.php文件,如下

vi /usr/local/apache2/htdocs/test.php 写入

yum -y install firefox

安装火狐浏览器

http://192.168.60.70/test.php 2、测试php与mysql的协调性: vi /usr/local/apache2/htdocs/test2.php $link=mysql_connect('localhost','root','mysql5'); if($link) echo \"恭喜你,数据库连接成功啦!!\"; mysql_close(); ?> 108795 10-11-9-50 17、【加速器】

给PHP设定加速器

cd /usr/src/ZendGuardLoader-php-5.3-linux-glibc23-i386/php-5.3.x/ cp ZendGuardLoader.so /usr/local/php/lib/php/ vi /usr/local/php/lib/php.ini添加以下语句

zend_extension=/usr/local/php/lib/php/ZendGuardLoader.so zend_loader.enable=1

tarzxvf /root/lamp/ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz -C /usr/src/

tarzxvf /root/lamp/ZendOptimizer-3.3.3-linux-glibc23-x86_64.tar.gz -C /usr/src/

./install.sh

18、【phpMyAdmin】

tarzxvf /root/lamp/phpMyAdmin-3.5.2.2-all-languages.tar.gz -C /usr/local/apache2/htdocs/

cd /usr/local/apache2/htdocs/

mv phpMyAdmin-3.5.2.2-all-languages phpmyadmin

cpconfig.sample.inc.phpconfig.inc.php

vi config.inc.php改密码

缺少mysqli扩展。请检查 PHP 配置。 解决办法

vi /usr/local/php/lib/php.ini ;extension=php_mysqli.dll

/usr/local/apache2/bin/apachectlstop

/usr/local/apache2/bin/apachectl start

错误提示:#1045 无法登录 MySQL 服务器 是因为密码错误

iptables–F

清空防火墙规则

在另一台计算http://192.168.60.70/test.php

机测试

因篇幅问题不能全部显示,请点此查看更多更全内容

Top