Linux下Web服务器应用之源码构建LAMP环境

简介:
+关注继续查看

 

Linux下Web服务器应用之

源码构建LAMP环境

1.构建的linux环境:

[root@www ~]# uname –a    #Linux的环境

Linux www 2.6.18-128.el5 #1 SMP Wed Dec 17 11:42:39 EST 2008 i686 i686 i386 GNU/Linux

2.准备工作:

准备一:关闭firewall和SELinux(略)

准备二:构建本地yum服务器(略)

准备三:下载以下软件(我存放在linux的/root/lamp下)

mysql-5.5.19-linux2.6-i686.tar.gz
httpd-2.2.21.tar.gz
php-5.3.8.tar.bz2

Ü Apache http://www.apache.org/

Ü Mysql http://www.mysql.com/

Ü Php http://www.php.net/

准备四:构建编译组环境

使用# yum grouplist all |less查看已安装的组环境(红色必选

Java Development
KDE Software Development

Legacy Software Development

X Software Development

Development Libraries

Development Tools

发现这里没有安装Development Tools,使用下面命令安装

[root@www ~]# yum groupinstall "Development Tools"

源码构建LAMP环境过程

1.源码安装mysql:

 

 

#这里我将下载的软件存放到/root/lamp目录下

 

 

 

[root@www ~]# cd /root/lamp/

 

 

#解压mysql的主程序文件,使用tar –zxvf,并使用-C指定解压目录 

 

 

(说明:一般一些额外的软件安装时经常将其放到/usr/local目录下)

 

 

[root@www lamp]# tar -zxvf mysql-5.5.19-linux2.6-i686.tar.gz -C /usr/local/

 

 

#切换至/usr/local/的目录下,并创建软连接,便于访问mysql文件

 

 

[root@www lamp]# cd /usr/local/

 

 

[root@www local]#ll

 

 

[root@www local]# ln -s mysql-5.5.19-linux2.6-i686/ mysql

 

 

[root@www local]# ll

 

 

#切换至mysql的目录下,进行一些主要配置

 

 

[root@www local]# cd mysql

 

 

[root@www mysql]# groupadd -r mysql

 

 

[root@www mysql]# useradd -r -g mysql -s /sbin/nologin -M mysql

 

 

 

[root@www mysql]# chown -R mysql:mysql .

 

 

 

[root@www local]# ll

 

 

[root@www mysql]# scripts/mysql_install_db --user=mysql

 

 

[root@www mysql]# chown -R root .

 

 

[root@www mysql]# chown -R mysql data/

 

 

[root@www mysql]# ll

 

 

[root@www mysql]# cp support-files/my-medium.cnf /etc/my.cnf

 

 

[root@www mysql]# cp support-files/mysql.server /etc/init.d/mysqld

 

 

#此时可以在任何位置,使用mysqld来管理服务

 

 

[root@www mysql]# service mysqld start

 

 

Starting MySQL...                                          [ OK ]

 

 

#配置mysql的头文件

 

 

[root@www mysql]# cat /etc/ld.so.conf

 

 

[root@www mysql]# cd /etc/ld.so.conf.d/

 

 

[root@www ld.so.conf.d]# ll

 

 

[root@www ld.so.conf.d]# vim mysql.conf

 

 

/usr/local/mysql/lib

 

 

[root@www ld.so.conf.d]# ldconfig -v |grep mysql

 

 

/usr/local/mysql/lib:

 

 

      libmysqlclient.so.18 -> libmysqlclient_r.so.18.0.0

 

 

#配置mysql的库文件

 

 

[root@www ld.so.conf.d]# cd /usr/include/

 

 

[root@www include]# ln -s /usr/local/mysql/include/ mysql

 

 

[root@www include]# cd mysql/

 

 

[root@www mysql]# ll

 

 

[root@www mysql]# cd

 

 

#使chkconfig可以管理mysqld服务

 

 

[root@www ~]# chkconfig --add mysqld

 

 

[root@www ~]# chkconfig --list |grep mysqld

 

 

mysqld            0:off    1:off    2:on     3:on     4:o5:on      6:off

 

[root@www ~]#

2.源码安装apache:

#解压apache程序文件
[root@www ~]# cd /root/lamp/

[root@www lamp]# tar -zxvf httpd-2.2.21.tar.gz -C /usr/local/src/

[root@www lamp]# cd /usr/local/src/
[root@www src]# ll
[root@www src]# cd httpd-2.2.21/
#配置apache二进制文件

[root@www httpd-2.2.21]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --with-z --enable-ssl

#编译apache二进制文件
[root@www httpd-2.2.21]#make
#安装apache二进制文件
[root@www httpd-2.2.21]#make install
#进行相关配置,使apache正常工作

[root@www httpd-2.2.21]# cd /usr/local/apache/

[root@www apache]# ./bin/apachectl start

[root@www apache]# netstat -tupln |grep http

[root@www apache]# vim /etc/profile
55 PATH=$PATH:/usr/local/apache/bin/
[root@www apache]# . /etc/profile
[root@www apache]# echo $PATH
 

/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/apache/bin/

 

#此时可以再任何位置:apachectl  start|restart |stop
#配置apache的头文件
[root@www apache]# cd /usr/include/

[root@www include]# ln -s /usr/local/apache/include/ apache

#配置apache的库文件
[root@www include]# cat /etc/ld.so.conf

[root@www include]# cd /etc/ld.so.conf.d/

[root@www ld.so.conf.d]# vim apache.conf

/usr/local/apache/lib

[root@www ld.so.conf.d]# ldconfig -v |grep apache

/usr/local/apache/lib:
[root@www ld.so.conf.d]#
#查看httpd和mysqld信息.

[root@www ld.so.conf.d]# netstat -tupln |grep httpd

tcp        0      0 :::80    :::*    LISTEN      21263/httpd        

[root@www ld.so.conf.d]# netstat -tupln |grep mysqld

tcp        0      0 :::3306   :::*        LISTEN      2937/mysqld

 

3.源码安装php:

#解压php程序文件

[root@www ~]# cd /root/lamp/

[root@www lamp]# tar -jxvf php-5.3.8.tar.bz2 -C /usr/local/src/

[root@www lamp]# cd /usr/local/src/
[root@www src]# ll
[root@www src]# cd php-5.3.8/
[root@www php-5.3.8]# ll
#配置php二进制文件

 

[root@www php-5.3.8]# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --enable-mbstring --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config

#编译php二进制文件
 
[root@www php-5.3.8]# make
#安装php二进制文件
[root@www php-5.3.8]# make install

4.测试LAMP环境:

增加网页测试文件:

#编辑apache的配置文件使识别index.php文件

[root@www htdocs]# vim /etc/httpd/httpd.conf

167     DirectoryIndex index.php index.html

310     AddType application/x-httpd-php .php

[root@www htdocs]# apachectl stop
[root@www htdocs]# apachectl start

 

#测试apache与PHP的连接:

[root@www php-5.3.8]# cd /usr/local/apache/htdocs/

[root@www htdocs]# ll
total 4
-rw-r--r-- 1 root root 44 Nov 21 2004 index.html

[root@www htdocs]# mv index.html index.php

[root@www htdocs]# vim index.php

<html><body><h1>It works!--xjzhujunjie--2012/03/18</h1></body></html>

<?php
phpinfo();
?> 

 

 

 

 

#测试apache与mysql的连接:

[root@www htdocs]# vim /usr/local/apache/htdocs/index.php

It works!--xjzhujunjie--2012/03/18
<?php
$link=mysql_connect('127.0.0.1','root','');
if($link)
echo "scuess";
else
echo "fail";
?>

[root@www htdocs]# service mysqld stop
Shutting down MySQL.                                       [ OK ]
--xjzhujunjie –2012/03/19-0:04




本文转自xjzhujunjie 51CTO博客,原文链接:http://blog.51cto.com/xjzhujunjie/810067

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
运维 关系型数据库 MySQL
【运维知识进阶篇】集群架构-Nginx实现基础web架构(Linux+Nginx+PHP+Mysql)(二)
【运维知识进阶篇】集群架构-Nginx实现基础web架构(Linux+Nginx+PHP+Mysql)(二)
89 0
|
2月前
|
运维 关系型数据库 MySQL
【运维知识进阶篇】集群架构-Nginx实现基础web架构(Linux+Nginx+PHP+Mysql)(一)
【运维知识进阶篇】集群架构-Nginx实现基础web架构(Linux+Nginx+PHP+Mysql)
67 0
|
3月前
|
安全 Ubuntu 前端开发
面向Web开发人员的Linux实用入门(转)
面向Web开发人员的Linux实用入门(转)
|
3月前
|
Unix Linux
Linux系统的web管理工具——webmin搭建
Linux系统的web管理工具——webmin搭建
190 2
|
4月前
|
Linux Go C语言
嵌入式linux之go语言开发(十一)让web服务器跑在终端上,通过网页配置终端参数
嵌入式linux之go语言开发(十一)让web服务器跑在终端上,通过网页配置终端参数
|
4月前
|
Java 关系型数据库 MySQL
linux云服务器下运行web项目完整步骤
linux云服务器下运行web项目完整步骤
|
4月前
|
关系型数据库 MySQL Java
【解决方案 三】---Linux下Web项目部署诸多问题
【解决方案 三】---Linux下Web项目部署诸多问题
104 0
|
4月前
|
Ubuntu 网络协议 Linux
本地Linux搭建web服务并发布公网访问
本地Linux搭建web服务并发布公网访问
124 0
|
4月前
|
Java 关系型数据库 MySQL
Web项目上线之Linux指令篇(二)
Web项目上线之Linux指令篇
|
4月前
|
Oracle 前端开发 Java
Web项目上线之Linux指令篇(一)
Web项目上线之Linux指令篇
相关产品
云迁移中心
推荐文章
更多