CentOS6源码编译搭建LAMP

  • A+
所属分类:服务搭建

LAMP是目前最稳定的Web应用程序平台之一,Linux、Apache、Mysql、PHP,它们都是各自独立的程序,熟悉配置各程序对于网站管理员来说是很有必要的。之前已分享过LNMP的编译教程,使用的都是较新版本的程序,今天分享一篇使用较低版本的程序来编译搭建LAMP,适合硬件配置较低的服务器使用。

 实验环境

实验平台:VMware虚拟机

操作系统:CentOS 6.5 / Windows10

服务端IP:192.168.168.200

客户端IP:192.168.168.201

MySQL:5.1.72

Apache:2.2.31

PHP:5.3.29

 服务端篇

第一步 准备工作

禁用SElinux

  1. [root@Wanghualang ~]# setenforce 0  
  2. [root@Wanghualang ~]# sed -ri 's#^(SELINUX=).*#\1disabled#g' /etc/selinux/config  

禁用防火墙

  1. [root@Wanghualang ~]# service iptables stop  
  2. [root@Wanghualang ~]# service ip6tables stop  
  3. [root@Wanghualang ~]# chkconfig iptables off        
  4. [root@Wanghualang ~]# chkconfig ip6tables off  

安装常用软件

  1. [root@Wanghualang ~]# yum -y install wget vim  

第二步 安装MySQL

新建MySQL用户和用户组

  1. [root@Wanghualang ~]# groupadd mysql    
  2. [root@Wanghualang ~]# useradd -M mysql -s /sbin/nologin -g mysql  

精简版的操作系统,在接下来的configure阶段肯定会出现缺失相关开发包的报错,根据提示安装相关开发包即可。教程中为了做到一气呵成,先提前安装好需要的开发包。

  1. [root@Wanghualang ~]# yum -y install gcc gcc-c++ ncurses-devel  

编译安装软件,数据库启动用户设置为mysql,程序安装目录设置为/usr/local/mysql,数据存放路径设置为/usr/local/mysql/data。

  1. [root@Wanghualang ~]# cd /usr/local/src/  
  2. [root@Wanghualang src]# wget --no-check-certificate https://cdn.mysql.com/archives/mysql-5.1/mysql-5.1.72.tar.gz  
  3. [root@Wanghualang src]# tar xzf mysql-5.1.72.tar.gz  
  4. [root@Wanghualang src]# cd mysql-5.1.72  
  5. [root@Wanghualang mysql-5.1.72]# ./configure --prefix=/usr/local/mysql  --datadir=/usr/local/mysql/data  --with-mysqld-user=mysql  --with-charset=utf8 --with-extra-charsets=all --with-plugins=all  --enable-local-infile  
  6. [root@Wanghualang mysql-5.1.72]# make  
  7. [root@Wanghualang mysql-5.1.72]# make install  

创建配置文件,建议先删除系统默认创建的MySQL配置文件,再拷贝新的配置文件。

  1. [root@Wanghualang ~]# rm -rf /etc/my.cnf  
  2. [root@Wanghualang ~]# cp -rf /usr/local/src/mysql-5.1.72/support-files/my-huge.cnf /etc/my.cnf  

配置命令环境变量

  1. [root@Wanghualang ~]# echo "export PATH="/usr/local/mysql/bin:$PATH">> /etc/profile    
  2. [root@Wanghualang ~]# source /etc/profile  

初始化数据库

  1. [root@Wanghualang ~]# /usr/local/src/mysql-5.1.72/scripts/mysql_install_db  --user=mysql  --datadir=/usr/local/mysql/data  

配置服务启动脚本

  1. [root@Wanghualang ~]# cp -rf /usr/local/src/mysql-5.1.72/support-files/mysql.server /etc/init.d/mysqld  
  2. [root@Wanghualang ~]# chmod 755 /etc/init.d/mysqld    
  3. [root@Wanghualang ~]# chkconfig --add mysqld  
  4. [root@Wanghualang ~]# chkconfig mysqld on  
  5. [root@Wanghualang ~]# vim /etc/init.d/mysqld  

大约在第46行,找到:

  1. basedir=  
  2. datadir=  

填写实际的安装目录和数据目录,最终修改为:

  1. basedir=/usr/local/mysql  
  2. datadir=/usr/local/mysql/data  

启动服务

  1. [root@Wanghualang ~]# service mysqld start  

扩展阅读展开


默认数据库root密码为空,建议设置密码。

  1. [root@Wanghualang-B ~]# mysqladmin -uroot password '123456'  

第三步 安装Apache

新建Apache用户和用户组

  1. [root@wanghualang ~]# groupadd apache    
  2. [root@wanghualang ~]# useradd -M apache -s /sbin/nologin -g apache  

编译安装软件

  1. [root@wanghualang ~]# cd /usr/local/src    
  2. [root@wanghualang src]# wget --no-check-certificate http://archive.apache.org/dist/httpd/httpd-2.2.31.tar.gz    
  3. [root@wanghualang src]# tar xzf httpd-2.2.31.tar.gz    
  4. [root@wanghualang src]# cd httpd-2.2.31    
  5. [root@wanghualang httpd-2.2.31]# ./configure --prefix=/usr/local/apache  --with-pcre  --enable-so    
  6. [root@wanghualang httpd-2.2.31]# make    
  7. [root@wanghualang httpd-2.2.31]# make install  

配置服务启动脚本

  1. [root@wanghualang ~]# cp -rf /usr/local/apache/bin/apachectl /etc/init.d/httpd    
  2. [root@wanghualang ~]# chmod 755 /etc/init.d/httpd    
  3. [root@wanghualang ~]# sed -i '1i\#chkconfig:345 85 15' /etc/init.d/httpd    
  4. [root@wanghualang ~]# chkconfig --add httpd    
  5. [root@wanghualang ~]# chkconfig httpd on  

配置启动用户和用户组

  1. [root@wanghualang ~]# sed -i 's/User daemon/User apache/' /usr/local/apache/conf/httpd.conf  
  2. [root@wanghualang ~]# sed -i 's/Group daemon/Group apache/' /usr/local/apache/conf/httpd.conf  

配置ServerName,这个不管也没问题。但如果不修改,启动的时候可能会有一个相关提示,推荐强迫症患者修改。

  1. [root@wanghualang ~]# sed -i 's/#ServerName www.example.com:80/ServerName localhost.localdomain/' /usr/local/apache/conf/httpd.conf  

第四步 安装PHP

精简版的操作系统,在接下来的configure阶段肯定会出现缺失相关开发包的报错,根据提示安装相关开发包即可。教程中为了做到一气呵成,先提前安装好需要的开发包。注意,最末尾的libmcrypt-devel比较特别,RHEL/CentOS默认的Yum源不包含这个软件包,需要安装第三方epel源才能安装。

  1. [root@Wanghualang ~]# yum -y install libxml2-devel openssl-devel bzip2-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel  

编译安装软件

  1. [root@Wanghualang ~]# cd /usr/local/src/  
  2. [root@Wanghualang src]# wget --no-check-certificate http://cn2.php.net/distributions/php-5.3.29.tar.gz  
  3. [root@Wanghualang src]# tar xzf php-5.3.29.tar.gz  
  4. [root@Wanghualang src]# cd php-5.3.29  
  5. [root@Wanghualang php-5.3.29]# ./configure  --prefix=/usr/local/php  --with-apxs2=/usr/local/apache/bin/apxs  --with-config-file-path=/usr/local/php/etc  --with-mysql=/usr/local/mysql  --with-libxml-dir  --with-gd  --with-jpeg-dir  --with-png-dir  --with-freetype-dir  --with-iconv-dir  --with-zlib-dir  --with-bz2  --with-openssl  --with-mcrypt  --enable-soap  --enable-gd-native-ttf  --enable-mbstring  --enable-sockets  --enable-exif  --disable-ipv6  
  6. [root@Wanghualang php-5.3.29]# make  
  7. [root@Wanghualang php-5.3.29]# make install  

第五步 配置Apache解析PHP

  1. [root@Wanghualang ~]# vim /usr/local/apache/conf/httpd.conf  

大约在第116行,找到:

  1. <Directory />  
  2. Options FollowSymLinks  
  3. AllowOverride None  
  4. Order deny,allow  
  5. Deny from all  
  6. </Directory>  

把Deny from all修改为Allow from all,最终修改如下:

  1. <Directory />  
  2. Options FollowSymLinks  
  3. AllowOverride None  
  4. Order deny,allow  
  5. Allow from all  
  6. </Directory>  

大约在第167行,找到:

  1. <IfModule dir_module>  
  2. DirectoryIndex index.html  
  3. </IfModule>  

在index.html后面新增index.php,注意之间有一个空格键,最终修改如下:

  1. <IfModule dir_module>  
  2. DirectoryIndex index.html index.php  
  3. </IfModule>  

大约在第309行,找到:

  1. AddType application/x-compress .Z  
  2. AddType application/x-gzip .gz .tgz  

在下面添加一行AddType application/x-httpd-php .php,最终修改如下:

  1. AddType application/x-compress .Z  
  2. AddType application/x-gzip .gz .tgz  
  3. AddType application/x-httpd-php .php  

启动服务

  1. [root@wanghualang ~]# service httpd start  

第六步 新建测试页

新建一个简单的PHP测试网页

  1. [root@Wanghualang ~]# vim /usr/local/nginx/html/wanghualang.php   

红字部分为代码内容:

  1. <?php    
  2. phpinfo();    
  3. ?>    

 客户端篇

使用浏览器访问测试网页:http://192.168.168.200/wanghualang.php,若能看到PHP相关程序信息,表示配置成功!

资源简介 文件名称:Apache & Mysql & PHP 文件版本:2.2.31 & 5.1.72 & 5.3.29 运行平台:Linux
下载地址
  • 微信赞助网站
  • weinxin
  • 支付宝赞助网站
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: