Centos+apache+mysql+php LAMP源码编译安装
时间:2014-07-03 02:03 来源:linux.it.net.cn 作者:IT网
WEB服务器linux+apache+mysql+php LAMP源码环境搭建
Linux+Apache+Mysql+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度共同
组成了一个强大的web应用程序平台。而从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案。
下面来看一下LAMP环境搭建的步骤。
准备工具:
apr-1.4.6.tar.gz apr-util-1.5.1.tar.gz
httpd-2.4.4.tar.bz2
mysql-5.6.10.tar.gz cmake-2.8.10.2.tar.gz
php-5.4.3.tar.gz
一.准备环境:
我用的是Red Hat Enterprise Linux 5.4 eth0 192.168.126.129
[root@lly ~]# mount /dev/cdrom /mnt/cdrom挂载光盘
用yum检测开发环境
[root@lly ~]# vim /etc/yum.repos.d/rhel-debuginfo.repo编辑yum客户端
[root@lly ~]# yum grouplist检查开发环境
说明:这里需要有这几个开发环境,我这里,环境已经具备了,要是没有这几个开发环境, 可以用yum groupinstall “开发环境名”即可,
注意:yum安装软件包组时,多个单词的一定要加””
二.安装
按照httpd mysql php 的顺序依次安装
1.安装apache
其实关于apache的安装,本人前边的博客已有介绍
[root@lly ~]# tar -zxvf apr-1.4.6.tar.gz -C /usr/local/src/
[root@lly ~]# tar -zxvf apr-util-1.5.1.tar.gz -C /usr/local/src/
[root@lly src]# cd /usr/local/src/apr-1.4.6/
[root@lly apr-1.4.6]# ./configure --prefix=/usr/local/apr把apr安装到/usr/local/apr目录下
[root@lly apr-1.4.6]#make
[root@lly apr-1.4.6]#make install
[root@lly apr-1.4.6]# cd ..
[root@lly src]# cd apr-util-1.5.1/
[root@lly apr-util-1.5.1]# ./configure --with-apr=/usr/local/apr/bin/apr-1-config
[root@lly apr-util-1.5.1]# make
[root@lly apr-util-1.5.1]# cd
[root@lly ~]# tar -jxvf httpd-2.4.4.tar.bz2 -C /usr/local/src/
[root@lly ~]# cd /usr/local/src/httpd-2.4.4/
[root@lly httpd-2.4.4]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-rewrite --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-pcre -with-z --enable-mpms-shared=all
[root@lly httpd-2.4.4]# make
[root@lly httpd-2.4.4]# make install
[root@lly httpd-2.4.4]#/usr/local/apache/man
[root@lly man]# vim /etc/man.config
把apache的man手册添加到man路径方便查看apache的man手册
为了防止系统调用apache的头文件include时找不到路径,可以做一个连接
[root@lly apache]# ln -s /usr/local/apache/include/ /usr/include/apache
为了更好的管理httpd,为其编辑一个启动脚本
[root@lly ~]# cd /etc/init.d/
[root@lly init.d]# vim httpd
脚本如下
#!/bin/sh
#set -x
HTTPD='/usr/local/apache/bin/httpd'
CONFFILE='/etc/httpd/httpd.conf'
#description: http server
#chkconfig: 2345 88 60
start(){
[ -f /var/lock/subsys/httpd ]&& echo "apache is started" && exit
echo -n "starting apache......"
sleep 1
}
stop(){
[ ! -f /var/lock/subsys/httpd ] && echo "httpd is stoped..." && exit
echo -n "stoping httpd........"
sleep 1
/bin/rm -rf /var/lock/subsys/httpd
$HTTPD -k stop && RETVAL=0 ||RETVAL=1
}
case $1 in
stop(){
[ ! -f /var/lock/subsys/httpd ] && echo "httpd is stoped..." && exit
echo -n "stoping httpd........"
sleep 1
/bin/rm -rf /var/lock/subsys/httpd
$HTTPD -k stop && RETVAL=0 ||RETVAL=1
[ $RETVAL -eq 0 ] && rm -rf /var/lock/subsys/httpd && echo "ok" || echo "fail"
}
case $1 in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "start|stop|restart"
;;
esac
[root@lly init.d]# chmod a+x /etc/init.d/httpd
[root@lly init.d]# service httpd start
[root@lly init.d]# netstat -tupln |grep http
tcp 0 0 :::80 :::*
[root@lly init.d]# chkconfig --add httpd添加自启动
[root@lly init.d]# chkconfig --list |grep http
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
2.安装mysql cmake
[root@lly ~]# tar zxvf mysql-5.6.10.tar.gz -C /usr/local/src/
[root@lly ~]# cd /usr/local/src/mysql-5.6.10/
[root@lly mysql-5.6.10]# less INSTALL-SOURCE
mysql的使用说明
安装mysql的时候需要用到cmake工具
安装cmake
[root@lly ~]# tar -zxvf cmake-2.8.10.2.tar.gz -C /usr/local/src/
[root@lly ~]# cd /usr/local/src/cmake-2.8.10.2/
[root@lly cmake-2.8.10.2]# ./configure --prefix=/usr/local/cmake
[root@lly cmake-2.8.10.2]# make && make install
Waiting.......................
[root@lly cmake-2.8.10.2]# cd /usr/local/cmake/
为了日后能快速访问cmake下的bin,把cmke下的bin添加路径
[root@lly cmake]# vim /etc/profile
注意:只有下次进入之后路径才会添加成功
[root@lly ~]# cd /usr/local/src/mysql-5.6.10/
86:36
[root@lly mysql-5.6.10]# cmake .
[root@lly mysql-5.6.10]# make && make install
Please waiting for a long time。。。。。。。。。。。。。。。。。。。。。。。。。。
[root@lly ~]# cd /usr/local/src/mysql-5.6.10/
[root@lly mysql-5.6.10]# less INSTALL-SOURCE
Mysql安装说明中的配置的步骤
[root@lly mysql-5.6.10]# cd /usr/local/mysql/
创建帐号信息
[root@lly mysql]# groupadd mysql
[root@lly mysql]# useradd -r -g mysql mysql
[root@lly mysql]# chown -R mysql .
进行初始化
[root@lly mysql]# scripts/mysql_install_db --user=mysql
[root@lly mysql]# chown -R root .
[root@lly mysql]# chown -R mysql data
[root@lly mysql]# cd support-files/
[root@lly support-files]# cp my-default.cnf /etc/my.cnf
[root@lly support-files]# cp mysql.server /etc/init.d/mysqld
[root@lly support-files]# chmod a+x /etc/init.d/mysqld
[root@lly support-files]# service mysqld start
Starting MySQL..... [ OK ]
mysqld 服务成功启动
[root@lly support-files]# netstat -tupln |grep mysqld
tcp 0 0 :::3306 :::*
[root@lly support-files]# cd ..
[root@lly mysql]# pwd
/usr/local/mysql
[root@lly mysql]# vim /etc/profile
重新登录一次
[root@lly ~]# mysql
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
[root@lly ~]# mysqladmin -u root -p password '123'设置一个管理员帐号密码123
[root@lly ~]# mysql -u root -p以后就可以以此帐号登陆了
mysql生成的/usr/local/mysql/lib库文件不是标准路径系统无法识别(/lib 或者/usr/lib为标准路径)所以需做如下配置
[root@lly mysql]# vim /etc/ld.so.conf.d/mysql.conf
写入
/usr/local/mysql/lib
刷新ld.so.cache
[root@lly mysql]# ll /etc/ld.so.cache
-rw-r--r-- 1 root root 81871 Apr 13 08:17 /etc/ld.so.cache
[root@lly mysql]# ldconfig
[root@lly mysql]# ll /etc/ld.so.cache
-rw-r--r-- 1 root root 82128 Apr 13 15:46 /etc/ld.so.cache
对mysql的头文件include做一个连接
[root@lly mysql]# ln -s /usr/local/mysql/include/ /usr/include/mysql
3.安装php
[root@lly ~]# tar -zxvf php-5.4.3.tar.gz -C /usr/local/src/
[root@lly ~]# cd /usr/local/src/php-5.4.3/
[root@lly php-5.4.3]# ./configure --prefix=/usr/local/php --sysconfdir=/etc --with-apxs2=/usr/local/apache/bin/apxs --with-zlib --with-gd --with-jpeg-dir --with-png-dir --enable-mbstring --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-xml --with-freetype-dir
[root@lly php-5.4.3]# make && make install
[root@lly php-5.4.3]# cd /usr/local/php/
[root@lly php]# vim /etc/profile
[root@lly php]# vim /etc/ld.so.conf.d/php.conf
写入
/usr/local/mysql/lib
[root@lly php]# ldconfig
[root@lly php]# ln -s include /usr/include/php
[root@lly php]# vim /etc/httpd/httpd.conf
在apache的配置文件中会自动添加modules/libphp5.so模块
[root@lly ~]# service httpd restart重启apache
注意:若出现如下错误,可能是是Linux有一个SELinux保护模式引起的
starting apache......httpd: Syntax error on line 147 of /etc/httpd/httpd.conf: Cannot load modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied
Fail
可以进行如下操作
1关闭SELINUX的方法:
vi /etc/selinux/config 将SELINUX=enforcing 改成SELINUX=disabled
需要重启
这个方法可能会对服务器带来风险。
2不关闭SELINUX的方法:
# setenforce 0
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
# service httpd restart
# setenforce 1
[root@lly ~]# cd /usr/local/apache/htdocs apache的默认站点目录
三.测试
1.测试apache
浏览器输入http://192.168.126.129
2.测试php
[root@lly htdocs]# mv index.html index.php 把apache的测试页改为php
[root@lly htdocs]# vim index.php
刷新浏览器出现如下界面
至此,apache和php完美结合了。。。
3.测试php和mysql的结合是否成功
[root@lly htdocs]# vim index.php
刷新浏览器
[root@lly htdocs]# service mysqld stop关闭mysqld服务时也显示正常
到这里 apache 和mysql、php已经完美结合在了一起。linux+apache+mysql+php的web环境架构已经形成了.
(责任编辑:IT)
WEB服务器linux+apache+mysql+php LAMP源码环境搭建 Linux+Apache+Mysql+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度共同 组成了一个强大的web应用程序平台。而从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案。 下面来看一下LAMP环境搭建的步骤。 准备工具: apr-1.4.6.tar.gz apr-util-1.5.1.tar.gz httpd-2.4.4.tar.bz2 mysql-5.6.10.tar.gz cmake-2.8.10.2.tar.gz php-5.4.3.tar.gz 一.准备环境: 我用的是Red Hat Enterprise Linux 5.4 eth0 192.168.126.129 [root@lly ~]# mount /dev/cdrom /mnt/cdrom挂载光盘 用yum检测开发环境 [root@lly ~]# vim /etc/yum.repos.d/rhel-debuginfo.repo编辑yum客户端
[root@lly ~]# yum grouplist检查开发环境
说明:这里需要有这几个开发环境,我这里,环境已经具备了,要是没有这几个开发环境, 可以用yum groupinstall “开发环境名”即可, 注意:yum安装软件包组时,多个单词的一定要加”” 二.安装 按照httpd mysql php 的顺序依次安装 1.安装apache 其实关于apache的安装,本人前边的博客已有介绍 [root@lly ~]# tar -zxvf apr-1.4.6.tar.gz -C /usr/local/src/ [root@lly ~]# tar -zxvf apr-util-1.5.1.tar.gz -C /usr/local/src/ [root@lly src]# cd /usr/local/src/apr-1.4.6/ [root@lly apr-1.4.6]# ./configure --prefix=/usr/local/apr把apr安装到/usr/local/apr目录下 [root@lly apr-1.4.6]#make [root@lly apr-1.4.6]#make install [root@lly apr-1.4.6]# cd .. [root@lly src]# cd apr-util-1.5.1/ [root@lly apr-util-1.5.1]# ./configure --with-apr=/usr/local/apr/bin/apr-1-config [root@lly apr-util-1.5.1]# make [root@lly apr-util-1.5.1]# cd [root@lly ~]# tar -jxvf httpd-2.4.4.tar.bz2 -C /usr/local/src/ [root@lly ~]# cd /usr/local/src/httpd-2.4.4/ [root@lly httpd-2.4.4]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-rewrite --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-pcre -with-z --enable-mpms-shared=all [root@lly httpd-2.4.4]# make [root@lly httpd-2.4.4]# make install [root@lly httpd-2.4.4]#/usr/local/apache/man [root@lly man]# vim /etc/man.config 把apache的man手册添加到man路径方便查看apache的man手册
为了防止系统调用apache的头文件include时找不到路径,可以做一个连接 [root@lly apache]# ln -s /usr/local/apache/include/ /usr/include/apache 为了更好的管理httpd,为其编辑一个启动脚本 [root@lly ~]# cd /etc/init.d/ [root@lly init.d]# vim httpd 脚本如下 #!/bin/sh #set -x HTTPD='/usr/local/apache/bin/httpd' CONFFILE='/etc/httpd/httpd.conf' #description: http server #chkconfig: 2345 88 60 start(){ [ -f /var/lock/subsys/httpd ]&& echo "apache is started" && exit echo -n "starting apache......" sleep 1 } stop(){ [ ! -f /var/lock/subsys/httpd ] && echo "httpd is stoped..." && exit echo -n "stoping httpd........" sleep 1 /bin/rm -rf /var/lock/subsys/httpd $HTTPD -k stop && RETVAL=0 ||RETVAL=1 } case $1 in stop(){ [ ! -f /var/lock/subsys/httpd ] && echo "httpd is stoped..." && exit echo -n "stoping httpd........" sleep 1 /bin/rm -rf /var/lock/subsys/httpd $HTTPD -k stop && RETVAL=0 ||RETVAL=1 [ $RETVAL -eq 0 ] && rm -rf /var/lock/subsys/httpd && echo "ok" || echo "fail" } case $1 in start) start ;; stop) stop ;; restart) stop start ;; *) echo "start|stop|restart" ;; esac [root@lly init.d]# chmod a+x /etc/init.d/httpd [root@lly init.d]# service httpd start [root@lly init.d]# netstat -tupln |grep http tcp 0 0 :::80 :::* [root@lly init.d]# chkconfig --add httpd添加自启动 [root@lly init.d]# chkconfig --list |grep http httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off 2.安装mysql cmake [root@lly ~]# tar zxvf mysql-5.6.10.tar.gz -C /usr/local/src/ [root@lly ~]# cd /usr/local/src/mysql-5.6.10/ [root@lly mysql-5.6.10]# less INSTALL-SOURCE mysql的使用说明 安装mysql的时候需要用到cmake工具 安装cmake [root@lly ~]# tar -zxvf cmake-2.8.10.2.tar.gz -C /usr/local/src/ [root@lly ~]# cd /usr/local/src/cmake-2.8.10.2/ [root@lly cmake-2.8.10.2]# ./configure --prefix=/usr/local/cmake [root@lly cmake-2.8.10.2]# make && make install Waiting....................... [root@lly cmake-2.8.10.2]# cd /usr/local/cmake/ 为了日后能快速访问cmake下的bin,把cmke下的bin添加路径 [root@lly cmake]# vim /etc/profile
注意:只有下次进入之后路径才会添加成功 [root@lly ~]# cd /usr/local/src/mysql-5.6.10/ 86:36 [root@lly mysql-5.6.10]# cmake . [root@lly mysql-5.6.10]# make && make install Please waiting for a long time。。。。。。。。。。。。。。。。。。。。。。。。。。 [root@lly ~]# cd /usr/local/src/mysql-5.6.10/ [root@lly mysql-5.6.10]# less INSTALL-SOURCE Mysql安装说明中的配置的步骤
[root@lly mysql-5.6.10]# cd /usr/local/mysql/ 创建帐号信息 [root@lly mysql]# groupadd mysql [root@lly mysql]# useradd -r -g mysql mysql [root@lly mysql]# chown -R mysql . 进行初始化 [root@lly mysql]# scripts/mysql_install_db --user=mysql [root@lly mysql]# chown -R root . [root@lly mysql]# chown -R mysql data [root@lly mysql]# cd support-files/ [root@lly support-files]# cp my-default.cnf /etc/my.cnf [root@lly support-files]# cp mysql.server /etc/init.d/mysqld [root@lly support-files]# chmod a+x /etc/init.d/mysqld [root@lly support-files]# service mysqld start Starting MySQL..... [ OK ] mysqld 服务成功启动 [root@lly support-files]# netstat -tupln |grep mysqld tcp 0 0 :::3306 :::* [root@lly support-files]# cd .. [root@lly mysql]# pwd /usr/local/mysql [root@lly mysql]# vim /etc/profile
重新登录一次 [root@lly ~]# mysql mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 4 rows in set (0.00 sec) [root@lly ~]# mysqladmin -u root -p password '123'设置一个管理员帐号密码123 [root@lly ~]# mysql -u root -p以后就可以以此帐号登陆了
mysql生成的/usr/local/mysql/lib库文件不是标准路径系统无法识别(/lib 或者/usr/lib为标准路径)所以需做如下配置 [root@lly mysql]# vim /etc/ld.so.conf.d/mysql.conf 写入 /usr/local/mysql/lib 刷新ld.so.cache [root@lly mysql]# ll /etc/ld.so.cache -rw-r--r-- 1 root root 81871 Apr 13 08:17 /etc/ld.so.cache [root@lly mysql]# ldconfig [root@lly mysql]# ll /etc/ld.so.cache -rw-r--r-- 1 root root 82128 Apr 13 15:46 /etc/ld.so.cache 对mysql的头文件include做一个连接 [root@lly mysql]# ln -s /usr/local/mysql/include/ /usr/include/mysql 3.安装php [root@lly ~]# tar -zxvf php-5.4.3.tar.gz -C /usr/local/src/ [root@lly ~]# cd /usr/local/src/php-5.4.3/ [root@lly php-5.4.3]# ./configure --prefix=/usr/local/php --sysconfdir=/etc --with-apxs2=/usr/local/apache/bin/apxs --with-zlib --with-gd --with-jpeg-dir --with-png-dir --enable-mbstring --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-xml --with-freetype-dir [root@lly php-5.4.3]# make && make install [root@lly php-5.4.3]# cd /usr/local/php/ [root@lly php]# vim /etc/profile
[root@lly php]# vim /etc/ld.so.conf.d/php.conf 写入 /usr/local/mysql/lib [root@lly php]# ldconfig [root@lly php]# ln -s include /usr/include/php [root@lly php]# vim /etc/httpd/httpd.conf 在apache的配置文件中会自动添加modules/libphp5.so模块
[root@lly ~]# service httpd restart重启apache 注意:若出现如下错误,可能是是Linux有一个SELinux保护模式引起的 starting apache......httpd: Syntax error on line 147 of /etc/httpd/httpd.conf: Cannot load modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied Fail 可以进行如下操作
1关闭SELINUX的方法:
需要重启
2不关闭SELINUX的方法: [root@lly ~]# cd /usr/local/apache/htdocs apache的默认站点目录 三.测试 1.测试apache 浏览器输入http://192.168.126.129
2.测试php [root@lly htdocs]# mv index.html index.php 把apache的测试页改为php [root@lly htdocs]# vim index.php
刷新浏览器出现如下界面
至此,apache和php完美结合了。。。 3.测试php和mysql的结合是否成功 [root@lly htdocs]# vim index.php
刷新浏览器
[root@lly htdocs]# service mysqld stop关闭mysqld服务时也显示正常
到这里 apache 和mysql、php已经完美结合在了一起。linux+apache+mysql+php的web环境架构已经形成了. (责任编辑:IT) |