源代码搭建Lamp
搭建环境 Red Hat Enterprise Linux 5.3
确保以下包已被安装(前三个必须):
Development Libraries
开发库
Development Tools
开发工具
Legacy Software Development
老的软件开发
X Software Development X
软件开发
GNOME Software Devleopment GNOME
软件开发
KDE Software Development KDE
软件开发
需要的软件包:
httpd-2.2.19.tar.bz2
mysql-5.5.15-linux2.6-i686.tar.gz
php-5.3.7.tar.bz2
步骤:
安装mysql:
[root@localhost local]# tar -zxvf /root/mysql-5.5.15-linux2.6-i686.tar.gz
解压软件包
[root@localhost ~]# cd /usr/local
[root@localhost local]# ln -s mysql-5.5.15-linux2.6-i686 mysql
做软链接
[root@localhost local]# ll
总计
76
drwxr-xr-x 2 root root 4096 2008-08-08 bin
drwxr-xr-x 2 root root 4096 2008-08-08 etc
drwxr-xr-x 2 root root 4096 2008-08-08 games
drwxr-xr-x 2 root root 4096 2008-08-08 include
drwxr-xr-x 2 root root 4096 2008-08-08 lib
drwxr-xr-x 2 root root 4096 2008-08-08 libexec
lrwxrwxrwx 1 root root 26 03-18 21:44 mysql -> mysql-5.5.15-linux2.6-i686
drwxr-xr-x 13 root root 4096 03-18 21:58 mysql-5.5.15-linux2.6-i686
drwxr-xr-x 2 root root 4096 2008-08-08 sbin
drwxr-xr-x 4 root root 4096 03-05 20:18 share
drwxr-xr-x 2 root root 4096 2008-08-08 src
[root@localhost mysql]# vim INSTALL-BINARY
查看安装步骤
[root@localhost local]# cd mysql
[root@localhost mysql]# groupadd mysql
[root@localhost mysql]# useradd -r -M -g mysql mysql
[root@localhost mysql]# chown -R mysql .
[root@localhost mysql]# chgrp -R mysql .
[root@localhost mysql]# scripts/mysql_install_db --user=mysql
做初始化
[root@localhost mysql]# chown -R root .
初始化之后改回权限
[root@localhost mysql]# chown -R mysql data
data所有者依然是mysql
[root@localhost mysql]# cp support-files/my-large.cnf /etc/my.cnf
把mysql配置文件拷过来
[root@localhost mysql-5.5.15-linux2.6-i686]# bin/mysqld_safe --user=mysql &
在后台启动mysql
[root@localhost mysql]# netstat -tupln |grep mysql
查看监听端口,表示已经启动成功
tcp 0 0 :::3306 :::* LISTEN 5298/mysqld
[root@localhost mysql]# vim /etc/profile
修改系统搜索变量,定义搜索路径
[root@localhost mysql]# . /etc/profile
重新读取
[root@localhost mysql]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:/usr/local/mysql/bin
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld
设置启动配置文件
[root@localhost mysql]# chkconfig --add mysqld
将服务加入chkconfig控制之列
[root@localhost mysql]# chkconfig --list |grep mysql
mysqld 0:
关闭
1:
关闭
2:
启用
3:
启用
4:
启用
5:
启用
6:
关闭
此后可以用 service mysqld 来管理mysqld服务
将头文件和库文件连接到系统默认的位置:
[root@localhost mysql]# cd /usr/include
在这个目录下建链接
[root@localhost include]# ln -s /usr/local/mysql/include mysql
[root@localhost include]# cd /etc/ld.so.conf.d/
[root@localhost ld.so.conf.d]# vim mysqld.conf
/usr/local/mysql/lib
测试是否成功导入
[root@localhost ld.so.conf.d]# ldconfig -v |grep mysql
/usr/local/mysql/lib:
libmysqlclient.so.18 -> libmysqlclient_r.so.18.0.0
安装apache:
[root@localhost ~]# tar -jxvf httpd-2.2.19.tar.bz2 -C /usr/local/src
解压
[root@localhost src]# cd /usr/local/src/httpd-2.2.19/
[root@localhost httpd-2.2.19]# ls
可以看到有个configure可执行文件,说明该软件包是未编译的原文件
ABOUT_APACHE config.layout httpd.spec LICENSE README.platforms
acinclude.m4 configure include Makefile.in README-win32.txt
Apache.dsw configure.in INSTALL Makefile.win ROADMAP
build docs InstallBin.dsp modules server
BuildAll.dsp emacs-style LAYOUT NOTICE srclib
BuildBin.dsp httpd.dep libhttpd.dep NWGNUmakefile support
buildconf httpd.dsp libhttpd.dsp os test
CHANGES httpd.mak libhttpd.mak README VERSIONING
[root@localhost httpd-2.2.19]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-ssl --with-z --enable-so
其中:
--prefix=/usr/local/apache(定义安装目录)
--sysconfdir=/etc/httpd(配置文件目录)
--enable-ssl(启用ssl)
--with-z(使用特殊的库文件)
--enable-so(支持dos模块)
编译
[root@localhost httpd-2.2.19]# make
[root@localhost httpd-2.2.19]# make install
把编译好的文件存放到相应的位置
[root@localhost apache]# cd /usr/local/apache/htdocs
[root@localhost htdocs]# ll
总计
4
-rw-r--r-- 1 root root 44 2004-11-21 index.html
[root@localhost apache]# bin/apachectl start
启动httpd服务
[root@localhost apache]# netstat -tupln |grep httpd
查看监听端口
tcp 0 0 :::80 :::* LISTEN 21875/httpd
[root@localhost apache]# vim /etc/profile
修改系统搜索变量,定义搜索路径
[root@localhost apache]# . /etc/profile
[root@localhost apache]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:/usr/local/mysql/bin:/usr/local/mysql/bin:/usr/local/apache/bin
将头文件和库文件连接到系统默认的位置:
[root@localhost apache]# cd /usr/include/
[root@localhost include]# ln -s /usr/local/apache/include httpd
[root@localhost include]# cd /etc/ld.so.conf.d/
[root@localhost ld.so.conf.d]# vim httpd.conf
/usr/local/apache/lib
测试是否成功导入:
[root@localhost ld.so.conf.d]# ldconfig -v |grep apache
/usr/local/apache/lib:
安装php:
[root@localhost ~]# tar -jxvf php-5.3.7.tar.bz2 -C /usr/local/src/
解压
[root@localhost ~]# cd /usr/local/src
[root@localhost src]# ll
总计
8
drwxr-xr-x 12 lu lu 4096 03-18 23:14 httpd-2.2.19
drwxr-xr-x 13 1000 1000 4096 2011-08-17 php-5.3.7
[root@localhost src]# cd php-5.3.7/
[root@localhost php-5.3.7]# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring=all
其中:
--prefix=/usr/local/php(表明安装位置)
--with-apxs2=/usr/local/apache/bin/apxs(将php编译成apache的模块 允许apache的apxx调用该模块)
--with-mysql=/usr/local/mysql (表明mysql安装位置)
--with-mysqli=/usr/local/mysql/bin/mysql_config (调用mysql的接口)
--enable-mbstring=all (表明支持字符集)
编译
[root@localhost php-5.3.7]# make
[root@localhost php-5.3.7]# make install
[root@localhost php-5.3.7]# vim /etc/httpd/httpd.conf
[root@localhost php-5.3.7]# apachectl stop
[root@localhost php-5.3.7]# apachectl start
[root@localhost php-5.3.7]# cd /usr/local/apache/htdocs/
[root@localhost htdocs]# ll
总计
4
-rw-r--r-- 1 root root 44 2004-11-21 index.html
[root@localhost htdocs]# mv index.html index.php
[root@localhost htdocs]# vim index.php
调用php:
root@localhost htdocs]# vim index.php
和mysql连接:
root@localhost htdocs]# vim index.php
转载于:https://blog.51cto.com/lulu1101/810026