前言:在这里将介绍如何在CentOS下搭建LAMP环境(全部使用源码编译安装),用于web服务器开发。

•LAMP: Linux + Apache + PHP + Mysql。

•系统: CentOS 6.5,32位。

CentOS安装

我选取了32位的CentOS 6.5这个Linux系统,安装过程也很简单,不再过多叙述,只稍微介绍一下我的分区情况:

分区名  大小

/boot  200MB

/swap  2GB(不大于物理分区即可)

/  20GB

/home 剩余空间

Apache编译安装

我选择了httpd 2.2这个版本,可以参考官方说明文档。

安装依赖:

安装依赖需要用到的gcc、g++编译器:

########gcc、g++

sudo  yum  install  gcc

sudo  yum  install  gcc-c++ 下面两个是apache的优化工具:

########apr

wget  http://labfile.oss.aliyuncs.com/apr-1.5.1.tar.gz

tar  -zxvf  apr-1.5.1.tar.gz

cd  apr-1.5.1/

./configure  --prefix=/opt/apr

Sudo make && make install

########apr-util

cd  Downloads/

wget http://labfile.oss.aliyuncs.com/apr-util-1.5.4.tar.gz

tar  -zxvf  apr-util-1.5.4.tar.gz

cd  apr-util-1.5.4

./configure  --prefix=/opt/apr-util  --with-apr=/opt/apr

sudo make && make install

Perl库,兼容正则表达式库:

cd  Downloads/

wget  http://labfile.oss.aliyuncs.com/pcre-8.36.tar.gz

tar  -zxvf  pcre-8.36.tar.gz

cd  pcre-8.36

./configure  --prefix=/opt/pcre

sudo make && make install

安装apache

cd  Downloads/

wget http://labfile.oss.aliyuncs.com/httpd-2.2.29.tar.gz

tar  -zxvf  httpd-2.2.29.tar.gz

cd  httpd-2.2.29

./configure  --prefix=/opt/apache  --with-apr=/opt/apr  --with-apr-util=/opt/apr-util  --with-pcre=/opt/pcre

sudo make && make install

sudo sed -i 's/^#ServerName.*/ServerName localhost/' /opt/apache/conf/httpd.conf

测试:

启动:

Sudo  /opt/apache/bin/apachectl  start获取服务器回应(安装apache最后一步已经将服务器设为localhost):

curl -I 127.0.0.1若安装成功则如下:

关闭:

sudo /opt/apache/bin/apachectl stop

MySQL编译安装

安装依赖:

注意: MySQL5.5之后的版本使用cmake进行编译。

########若先前编译过,则需要删除刚才编译生成的CMakeCache.txt文件

rm  -f  CMakeCache.txt

sudo yum -y install gcc gcc-c++ autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* cmake cmake-gui libaio-devel bison-devel make

编译安装(时间较长):

Cd  Downloads/

Wget  http://labfile.oss.aliyuncs.com/mysql-5.6.24.tar.gz

Tar  -zxvf  mysql-5.6.24.tar.gz

cd  mysql-5.6.24

cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql -DMYSQL_DATADIR=/opt/mysql/data -DWITH_INNOBASE_STORAGE_ENGINE=1

sudo make

sudo make install

创建mysql用户:

id mysql > /dev/null 2>&1 || sudo useradd -r -s /sbin/nologin -M -d /opt/mysql/data mysql

初始化数据目录:

sudo chown -R mysql:mysql /opt/mysql/data

sudo /opt/mysql/scripts/mysql_install_db --basedir=/opt/mysql --datadir=/opt/mysql/data --user=mysql --defaults-file=/opt/mysql/support-files/my-default.cnf

修改配置文件:

sudo sh -c 'cat >> /opt/mysql/my.cnf <<EOF

basedir = /opt/mysql

datadir = /opt/mysql/data

log-error = /opt/mysql/data/error.log

pid-file = /opt/mysql/data/mysql.pid

port = 3306

EOF'

清除残留文件:

sudo sh -c 'for file in /etc/mysql/my.cnf /etc/my.cnf ; do [ -f $file ] && rm -f $file ; done'

启动:

sudo /opt/mysql/support-files/mysql.server start

成功则显示:

测试:

/opt/mysql/bin/mysqladmin ping

成功则显示:

查看数据库:

/opt/mysql/bin/mysql -u root -e 'show databases;'

关闭:

sudo /opt/mysql/support-files/mysql.server stop

成功则显示:

PHP编译安装

安装依赖:

cd  Downloads/

sudo yum install zlib1g-dev libbz2-dev libcurl4-gnutls-dev  libjpeg-dev libpng12-dev  libfreetype6-dev  libmcrypt-dev libxml2-dev

sudo yum install bzip2-devel -y

sudo yum -y install curl-devel

sudo yum install openssl openssl-devel -y

sudo yum install libjpeg libpng freetype libjpeg-devel libpng-devel freetype-devel -y

sudo yum install libjpeg libjpeg-devel libpng libpng-devel

*以上不一定要全部安装

########安装Libmcrypt

tar -zxvf libmcrypt-2.5.8.tar.gz

cd libmcrypt-2.5.8

./configure

sudo make

sudo make install

说明:libmcript默认安装在 /usr/local

########安装mhash

cd ..

tar -zxvf mhash-0.9.9.9.tar.gz

cd mhash-0.9.9.9

./configure

sudo make

sudo make install

#########安装mcrypt

cd ..

tar  -zxvf  mcrypt-2.6.8.tar.gz

cd  mcrypt-2.6.8

LD_LIBRARY_PATH=/usr/local/lib  ./configure

sudo make

sudo make install

编译安装:

cd  Downloads/

wget http://labfile.oss.aliyuncs.com/php-5.5.21.tar.gz

tar -zxvf php-5.5.21.tar.gz

cd  php-5.5.21

./configure --prefix=/opt/php --with-bz2 --with-curl --with-jpeg-dir --with-gd --enable-shared --enable-mbstring --with-mcrypt --with-mysql=/opt/mysql --with-pdo-mysql=/opt/mysql --with-mysqli=/opt/mysql/bin/mysql_config --enable-fpm --enable-phar --enable-bcmath --with-zlib --enable-zip --enable-ftp --with-gettext --enable-sockets --with-freetype-dir  --with-config-file-path=/opt/php/etc/php.ini --with-config-file-scan-dir=/opt/php/etc/conf.d --with-apxs2=/opt/apache/bin/apxs

sudo make

sudo make install

sudo cp php.ini-production /opt/php/etc/php.ini

*错误里面含有mysql,那是因为mysql-devel 没有安装。解决方法:yum install mysql-devel

检查php是否支持mysql:

/opt/php/bin/php -m | grep mysql

若支持则显示:

修改apache配置文件,添加php的支持配置:

sudo sh -c 'cat >> /opt/apache/conf/httpd.conf <<EOF

<IfModule mime_module>

AddType application/x-httpd-php .php

</IfModule>

EOF'

若关闭则开启apache,否则重新启动apache:

sudo /opt/apache/bin/apachectl -k restart测试:

sudo sh -c 'echo "<?php echo phpinfo(); ?>" > /opt/apache/htdocs/test.php'

在浏览器输入:

http://localhost/test.php

配置成功则显示php信息:

*按以上步棸,注意php.ini文件所在的位置应该是/opt/php/etc/php.ini/php.ini。

CentOS下搭建LAMP环境详解的更多相关文章

  1. centos下搭建lamp环境

    1 在线安装所有的服务 yum -y install httpd mysql mysql-server php php-mysql postgresql postgresql-server php-p ...

  2. centos 下 搭建 php 环境

    本文详细阐述在 Linux 系统中搭建 PHP 环境,由于 PHP 就是由 C 语言编写的,最初也是运行在 Linux 系统中,所以Linux 是 PHP 的最佳环境. 关于本文中使用到的软件,请点击 ...

  3. linux下搭建lamp环境以及安装swoole扩展

    linux下搭建lamp环境以及安装swoole扩展   一.CentOS 6.5使用yum快速搭建LAMP环境 准备工作:先更新一下yum源  我安装的环境是:apache2.2.15+mysql5 ...

  4. Centos下搭建LAMP+PHP

    Centos下搭建LAMP+PHP LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写: Linux,操作系统 Apache,网页服务器 MariaDB或MySQL,数据库管 ...

  5. Centos6.4版本下搭建LAMP环境

    Centos6.4版本下搭建LAMP环境 配置yum mkdir/mnt/cdrom mount/dev/cdrom  /mnt/cdrom 装载光盘 vi /etc/yum.repos.d/Cent ...

  6. Ubuntu18.04下搭建LAMP环境

    一.Apache2 web 服务器的安装 : 可以先更新一下服务器 1.sudo apt-get update             # 获取最新资源包 2.sudo apt-get upgrade ...

  7. CentOS6.5下搭建LAMP环境(源码编译方式)

    CentOS 6.5安装配置LAMP服务器(Apache+PHP5+MySQL) 学习PHP脚本编程语言之前,必须先搭建并熟悉开发环境,开发环境有很多种,例如LAMP ,WAMP,MAMP等.这里我介 ...

  8. CentOS 7.4下源码编译安装配置LAMP环境详解

    CentOS 7.4搭建LAMP,LAMP:Linux.Apache.MySQL.PHP. 目录:第一部分 准备工作第二部分 安装Apache服务第三部分 安装MySQL服务第四部分 搭建PHP运行环 ...

  9. CentOS 6.5下搭建LAMP环境详细步骤

    1.确认搭建LAMP所需的环境是否已经安装: [root@localhost ~]#rpm -q make gcc gcc-c++ zlib-devel libtool libtool-ltdl li ...

随机推荐

  1. React Native开发之npm start加速

    在Windows下好不容易安装好React Native环境之后,运行npm start,结果就是无限被等待,快的话160秒(将近3分钟啊....) 而Mac下因为有watchman所以是飞一样的速度 ...

  2. Xcode的清除缓存

    1.在“前往文件夹”中输入“   /Users/用户名/Library/Developer/Xcode/DerivedData  ”,然后删除里面的东西

  3. Java_ClassLoader内存溢出-从tomcat的reload说起

    原文链接:http://nius.me/classloader-memory-leak/ 对于j2ee项目,一直使用eclipse的wtp,每次修改代码后,可以自动热部署.简单的项目wtp似乎没什么问 ...

  4. [转]starling教程-触摸事件(Touch Events)(四)

    在前面提到过,Starling是Sparrow的姊妹篇,正因为这样,Starling里的touch事件的机制其实是为移动设备的触摸交互设计的,所以当你使用它进行使用鼠标交互的桌面应用开发时,第一眼会感 ...

  5. phpcmsv9 阿里云OSS云存储整合教程

    该教程算不上是phpcmsv9阿里云oss插件,所以整个修改及其代码覆盖前请一定记得备份.还有一点就是后台发布文章时上传的附件还是会保存在你的服务器上,基于以下原因:1.个人的需求是前台页面需要使用t ...

  6. C %p

    格式控制符“%p”中的p是pointer(指针)的缩写.指针的值是语言实现(编译程序)相关的,但几乎所有实现中,指针的值都是一个表示地址空间中某个存储器单元的整数.printf函数族中对于%p一般以十 ...

  7. Apache Storm源码阅读笔记

    欢迎转载,转载请注明出处. 楔子 自从建了Spark交流的QQ群之后,热情加入的同学不少,大家不仅对Spark很热衷对于Storm也是充满好奇.大家都提到一个问题就是有关storm内部实现机理的资料比 ...

  8. Grandle全局变量定义及引用

    在Project的build.gradle脚本中定义一些全局变量 ext { compileSdkVersion = 21 buildToolsVersion = "24.0.1" ...

  9. 实验五(简单嵌入式WEB服务器实验)问题总结

    实验五问题总结 问题链接:<信息安全系统设计基础>实验五实验报告 虽然将07_httpd文件中全部拷贝进了bc中,文件夹中拥有Makefile文件,但是还是无法通过make得到该文件夹中c ...

  10. centos 查看版本(转)

    # lsb_release -aLSB Version:    :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch ...