LAMP源码安装
作为前端程序员,PHP是经常使用的语言之一,其开发环境有很多,诸如LAMP,WAMP和MAMP等,今天就介绍第一种也是最常用的一种,LAMP——Linux + Apache + MySQL + PHP
1.检查编译环境
gcc -v
2.准备安装包
#安装包的顺序也是安装的顺序,所以,可以按顺序下载,边下载边安装
1)库文件
libxml2:ftp://xmlsoft.org/libxml2/
libmcrypt:http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/
zlib:http://www.zlib.net
libpng:http://www.libpng.org/pub/png/libpng.html
jpeg:http://www.ijg.org/files/
freetype:http://download.savannah.gnu.org/releases/freetype/
autoconf:http://ftp.gnu.org/gnu/autoconf/
gd:http://www.libgd.org
2)Apache
httpd:http://httpd.apache.org/download.cgi
3)MySQL
MySQL:http://dev.mysql.com/downloads/
4)PHP
PHP:http://www.php.net/downloads.php
3.安装库文件
#如果安装成功以后,在/usr/local/库名/目录下将生成bin,include,lib,share四个目录。
1)libxml2
tar -zxvf libxml2-x.x.x.tar.gz cd libxml2-x.x.x.tar.gz ./configure --prefix=/usr/local/libxml2 make make install
2)libmcrypt
tar -zxvf libmcrypt-x.x.x.tar.gz cd libmcrypt-x.x.x.tar.gz ./configure --prefix=/usr/local/libmcrypt make make install
3)zlib
tar -zxvf zlib-x.x.x.tar.gz cd zlib-x.x.x.tar.gz ./configure --prefix=/usr/local/zlib --with-zlib-dir=/usr/local/zlib make make install
4)libpng
tar -zxvf libpng-x.x.x.tar.gz cd libpng-x.x.x.tar.gz ./configure --prefix=/usr/local/libpng make make install
5)jpeg
tar -zxvf jpeg-x.tar.gz cd jpeg-x.tar.gz ./configure --prefix=/usr/local/jpeg make make install
6)freetype
tar -zxvf freetype-x.x.x.tar.gz cd freetype-x.x.x.tar.gz ./configure --prefix=/usr/local/freetype make make install
7)atuoconf
tar -zxvf atuoconf-x.x.tar.gz cd atuoconf-x.x.tar.gz ./configure make make install
8)libgd
tar -zxvf libgd-x.x.x.tar.gz cd libgd-x.x.x.tar.gz ./configure --prefix=/usr/local/gd --with-jpeg=/usr/local/jpeg/ --with-png=/usr/local/libpng/ --with-freetype=/usr/local/freetype/ make make install
4.安装Apache(httpd)
tar -zxvf httpd-x.x.x.tar.gz cd httpd-x.x.x.tar.gz ./configure --prefix=/usr/local/apache --enable-mods-shared=all --enable-deflate --enable-speling --enable-cache --enable-file-cache --enable-disk-cache --enable-mem-cache --enable-so --enable-expires=shared --enable-rewrite=shared --enable-static-support --sysconfdir=/etc/httpd --with-z=/usr/local/zlib/ --with-apr=/usr/local/apr-httpd/ --with-apr-util=/usr/local/apr-util-httpd/ --with-pcre=/usr/local/pcre/ --disable-userdir make make install
#如果configure失败的话,首先应检查后置参数是否设置正确,要保障之前的安装是没有问题的,后接参数所指向的文件夹是存在的,或者可以尝试不加其他参数直接配置
5.安装MySQL
1)增加MySQL用户
groupadd mysql
useradd -g mysql mysql
2)安装服务
tar -zxvf mysql-x.x.x.tar.gz cd mysql-x.x.x.tar.gz ./configure --prefix=/usr/local/mysql --enable-thread-safe-client --with-extra-charsets=all make make install
#这里要注意的是,如果是新版本MySQL,需要用到cmake来配置,不能直接用上面的方法
下载cmake文件
http://www.cmake.org/cmake/resources/software.html
解压安装
#注意这里是gmake不是make
tar -zxvf cmake-x.x.x.tar.gz cd cmake-x.x.x ./configure --prefix=/usr/local/cmake gmake make install
将cmake指令的路径加入环境变量
export PATH=/usr/local/cmake/bin:$PATH
用cmake来配置mysql
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
安装
make
make install
3)创建mysql数据库服务器的配置文件
#将support-files目录中的my-medium.cnf文件作为模板复制到/etc/目录下,命名为my.cnf
cp support-files/my-medium.cnf /etc/my.cnf
4)创建MySQL授权表
#进入到安装目录/usr/local/mysql下,执行bin目录下的mysql_install_db脚本,用来初始化MySQL数据库的授权表,其中存储了服务器访问允许
cd /usr/local/mysql
bin/mysql_install_db --user=mysql
#如果使用root用户运行上面的命令,应当使用--user选项,选项的值应当与你在第一步为运行服务器所创建的mysql用户相同。 如果用mysql用户登录来运行上面的命令,可以省略--user选项。用mysql_install_db创建mysql授权表后,需要手动重新启动服务器
5)将程序二进制的所有权改为root用户
#数据目录的所有权改为运行mysqld程序的mysql用户
cd /usr/local/mysql chown -R root . chown -R mysql var chgrp -R mysql .
6)启动服务
/usr/local/mysql/bin/mysqld_safe --user=mysql &
7)检查端口是否启动
netstat -tnl | grep 3306
6.安装PHP
tar -zxvf php-x.x.x.tar.gz cd php-x.x.x.tar.gz ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql/ --with-libxml-dir=/usr/local/libxml2/ --with-png-dir=/usr/local/libpng/ --with-jpeg-dir=/usr/local/jpeg/ --with-freetype-dir=/usr/local/freetype/ --with-gd=/usr/local/gd/ --with-zlib-dir=/usr/local/zlib/ --with-mcrypt=/usr/local/libmcrypt/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets make make install
7.整合配置
1)配置PHP
#设置时区,去掉前面的分号(;),并在后面添加"RPC"
cp php.ini-development /usr/local/php/etc/php.ini vi php.ini date.timezone = "PRC"
2)配置Apache
vi /usr/local/apache/conf/httpd.conf
找到并在
AddType application/x-gzip .gz .tgz
指令选项下方添加两 条指令,用来识别PHP的文件
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-source.phps .php5
8.启动测试
#创建测试文件
cd /usr/local/apache/htdocs
touch test.php
vi test.php
#输入测试内容
<?php phpinfo(); ?>
#ESC后保存退出
:wq
#启动Apache
/usr/local/apache/bin/apachectl start
#输入网址访问:
127.0.0.1/test.php