Linux下源码安装LAMP(CentOS 6.8 + Apache2.4 + MySQL5.5 + PHP7)环境

一、简介

PHP已经走过了20年的历史,PHP7对于上一版本的PHP5.*,在性能方面有了跨越式的提升,当然也有一些新增的特性和改变,具体大家可以参考网上更为详细的相关资料文档。

二、系统环境

系统平台:CentOS release 6.8 (Final)

Apache版本:httpd-2.4.6.tar.gz

MySQL 版本:mysql-5.5.53.tar.gz

PHP版本:php-7.1.0.tar.gz

三、安装前准备

1、库文件准备

在安装PHP之前,应先安装PHP需要的最新版本库文件,例如libxml2、libmcrypt以及GD2库等文件。安装GD2库是为了让PHP支持GIF、PNG和JPEG等图片格式,所以在安装GD2库之前还要先安装最新的zlib、libpng、freetype和jpegsrc等库文件。而且中间还会穿插安装一些软件,读者可以按照本节提供的顺序安装。

autoconf-2.69.tar.gz

freetype-2.3.5.tar.gz

libgd-2.1.0.tar.gz

jpegsrc.v7.tar.gz

libmcrypt-2.5.8.tar.gz

libpng-1.2.31.tar.gz

libxml2-2.7.8.tar.gz

zlib-1.2.7.tar.gz

apr-1.5.2.tar.gz

apr-util-1.3.8.tar.gz

pcre-8.32.tar.gz

curl-7.52.1.tar.gz

2、安装系统所需要的相关库文件

如果没有安装则用 yum

# yum -y install make gcc gcc-c++ libaio

3、卸载默认的低版本环境

目前发行的Linux操作系统,如果选择默认全部安装,就已经安装好了LAMP环境,但是相对版本都比较低。

a. 卸载Apache

# rpm -qa |grep httpd

说明:检查是否已经安装了httpd软件包

# rpm -e httpd-2.2.3-63.el5.centos  --nodeps

说明:卸载软件包, --nodeps 如果有依赖关系,也强制卸载

# rm -rf /etc/httpd

说明:到原来的apache安装目录下,将其所有的安装目录和文件都删掉

b. 卸载Mysql

# rpm -qa | grep mysql

说明:卸载mysql

c. 卸载Php

# rpm -qa | grep php

说明:卸载PHP

4、关闭selinux,清空防火墙规则

5、使用ssh shell将windows下的13个源码包上传到/usr/local/src 目录下

6、将*.tar.gz源码包逐一解压

四、安装LAMP

1、安装libxml2

# cd /usr/local/src/libxml2-2.7.8

# ./configure --prefix=/usr/local/libxml2
# make && make install

2、安装libmcrypt

# cd /usr/local/src/libmcrypt-2.5.7

# ./configure --prefix=/usr/local/libmcrypt
# make && make install

3、安装zlib

# cd /usr/local/src/zlib-1.2.7

# ./configure --prefix=/usr/local/zlib

# make && make install

4、安装libpng

# cd /usr/local/src/libpng-1.2.10

# ./configure --prefix=/usr/local/libpng
# make && make install

5、安装jpeg7

这个软件包安装有些特殊,其它软件包安装时如果目录不存在,会自动创建,但这个软件包安装时需要手动创建。

# mkdir /usr/local/jpeg7
# mkdir /usr/local/jpeg7/bin
# mkdir /usr/local/jpeg7/lib
# mkdir /usr/local/jpeg7/include
# mkdir -p /usr/local/jpeg7/man/man1

# cd /usr/local/src/jpeg-7

# ./configure --prefix=/usr/local/jpeg7/ --enable-shared --enable-static
# make && make install

6、安装freetype

# cd /usr/local/src/freetype-2.3.5

# ./configure --prefix=/usr/local/freetype

# make

# make install

7、安装autoconf

# cd /usr/local/src/autoconf-2.69

# ./configure

# make && make install

8、安装GD库

# cd /usr/local/src/libgd-2.1.0

# ./configure -prefix=/usr/local/gd2  \

--enable-m4_pattern_allow \

--with-jpeg=/usr/local/jpeg7 \

--with-png=/usr/local/libpng/  \

--with-zlib=/usr/local/zlib/  \

--with-freetype=/usr/local/freetype

# make

#make install

9、安装xpm

# yum -y install libXpm-devel.x86_64

10、安装apr

# cd apr-1.5.2

# ./configure --prefix=/usr/local/apr

如果报错:

config.status: executing libtool commands
rm: cannot remove `libtoolT‘: No such file or directory
config.status: executing default commands


# yum -y install libtool

11、安装apr-util

# cd apr-util-1.3.8

# ./configure  --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

# make

# make install

12、安装pcre

# cd pcre-8.32

# ./configure --prefix=/usr/local/pcre

13、安装curl

# cd curl-7.52.1

# ./configure  --prefix=/usr/local/curl

# make

# make install

14、安装Apache

# cd /usr/local/src/httpd-2.4.6

# ./configure --prefix=/usr/local/apache2 \

# --with-pcre=/usr/local/pcre \

# --with-apr=/usr/local/apr \

# --with-apr-util=/usr/local/apr-util \

# --with-z=/usr/local/zlib

# --enable-so \

# --enable-expires=shared \

# --enable-rewrite=shared \

# --enable-static-support

15、配置Apache

a.设置apache

根目录:ServerRoot "/usr/local/apache2"

管理员邮箱:ServerAdmin [email protected]

域名设置:ServerName 127.0.0.0    注:写服务器真实IP地址

b.修改所有文件的权限

<Directory />

Options FollowSymLinks

AllowOverride All

Order deny,allow

Allow from all

Satisfy all

</Directory>

<Directory "/usr/local/apache2/cgi-bin">

AllowOverride None

Options None

Order allow,deny

Allow from all

</Directory>

c.配置根目录

DocumentRoot "/usr/local/apache2/htdocs"

d.配置根目录的权限

<Directory "/usr/local/apache2/htdocs">

Options Indexes FollowSymLinks

AllowOverride None

Order allow,deny

Allow from all

Require all granted

</Directory>

e.配置欢迎页(首页)

<IfModule dir_module>

DirectoryIndex index.php index.html

</IfModule>

f.加载PHP模块和开启其他扩展

AddType application/x-compress .Z

AddType application/x-gzip .gz .tgz

Addtype application/x-httpd-php .php .phtml

16、安装MySQL

MySQL自5.5版本以后,就开始使用cmake编译工具了。

tar.gz形式源码编译安装mysql时间要很久,但是用户可以自定义目录结构。

a. 安装系统所需要的库文件及MySQL所依赖的库文件

# yum -y install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*

b. 安装cmake

# wget http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz

# yum -y install cmake

c. 编译安装MySQL 5.5.53

# /usr/sbin/groupadd mysql

# /usr/sbin/useradd -g mysql mysql

# tar -zxvf mysql-5.5.53.tar.gz

# cd mysql-5.5.53

# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

# -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \

# -DEXTRA_CHARSET=all \

#-DDEFAULT_CHARSET=utf8 \

#-DDEFAULT_COLLATION=utf8_general_ci \

#-DWITH_MYISAM_STORAGE_ENGINE=1 \

#-DWITH_INNOBASE_STORAGE_ENGINE=1 \

#-DWITH_READLINE=1 \

#-DENABLED_LOCAL_INFILE=1 \

#-DMYSQL_DATADIR=/usr/local/mysql/data \

#-DWITH_SSL=yes -DMYSQL_USER=mysql

d. 执行安装,需要等待较长时间

# make

# make install

e. 改变目录拥有者和所属组

# chmod +w /usr/local/mysql

# chown -R mysql:mysql /usr/local/mysql

# ln -s /usr/local/mysql/lib/libmysqlclient.so.16 /usr/lib/libmysqlclient.so.16

# cd support-files

# cp my-large.cnf /etc/my.cnf  #复制默认配置文件,适合大型服务器

# cp mysql.server /etc/init.d/mysqld    # 复制启动文件

17、配置并启动MySQL

# vi /etc/my.cnf

a.在[mysqld]下面添加

socket          = /usr/local/mysql/mysql.sock

basedir = /usr/local/mysql

datadir = /usr/local/mysql/data

log-error = /usr/local/mysql/mysql_error.log

pid-file = /usr/local/mysql/data/mysql.pid

tmpdir = /tmp

user = mysql

b.在[client]下面添加

socket          = /usr/local/mysql/mysql.sock

c.初始化mysql

# /usr/local/mysql/scripts/mysql_install_db \

# --basedir=/usr/local/mysql \

# --datadir=/usr/local/mysql/data \

# --user=mysql

d.将mysql加入服务,开机自启动

# cd /usr/local/mysql/bin

# cp -p /usr/local/mysql/bin/mysqld /etc/init.d/mysqld

# chmod +x /etc/init.d/mysqld

# vi /etc/init.d/mysqld (查找并修改以下内容)

basedir=/usr/local/mysql

datadir=/var/mysql/data

# chkconfig --add mysqld

# chkconfig --level 345 mysqld on

e.为MySQL配置环境变量,方便以后的使用

# export PATH=/usr/local/mysql/bin:$PATH

f.启动 mysql

# service mysqld start

g.为MySQL设置密码

# mysql_secure_installation

18、安装PHP

# cd /usr/local/src/php-7.1.0

# ./configure --prefix=/usr/local/php  \

# --with-mysqli=/usr/local/mysql/bin/mysql_config  \

# --with-apxs2=/usr/local/apache2/bin/apxs  \

# --with-libxml-dir=/usr/local/libxml2/  \

# --enable-sockets  --enable-xml  \

# --with-curl=/usr/local/curl  \

# --with-pdo-mysql=/usr/local/mysql/  \

# --with-jpeg-dir=/usr/local/jpeg7/  \

# --with-png-dir=/usr/local/libpng  \

# --with-gd=/usr/local/gd2/  \

# --with-freetype-dir=/usr/local/freetype/  \

# --with-xpm-dir=/usr/include/X11/xpm.h

# make

# make install

19、创建配置PHP文件

# cp -p php.ini-development  /usr/local/php/etc/php.ini   #复制配置文件,适合开发者


五、测试

1、编写info.php文件,查看php配置详细

# vi /usr/local/apache2/htdocs/info.php

<?php
  phpinfo();
?>

时间: 2024-10-25 17:33:58

Linux下源码安装LAMP(CentOS 6.8 + Apache2.4 + MySQL5.5 + PHP7)环境的相关文章

CentOS 6.5下源码安装LAMP(Linux+Apache+Mysql+Php)环境

CentOS 6.5下源码安装LAMP(Linux+Apache+Mysql+Php)环境一. 系统环境:Linux系统版本: CentOS release 6.5Apache版本: httpd-2.2.24PHP 版本: php-5.6.11 二.安装前准备: 1.查看是否安装GCC ,GCC-C++编译器,如果没有则进行安装: 查看是否安装的命令: #gcc –v 若未安装在服务器联网情况下可以使用下列命令安装: #yum install gcc #yum install gcc-c++2.

Linux下源码安装CodeBlocks

Linux下源码安装CodeBlocks qianghaohao(CodingNutter) 一. 安装平台说明: CentOs6.4-i686  gcc-4.4.7 二. 下载最新源码: http://www.codeblocks.org/downloads 在此安装的是最新版:Code::Blocks 16.01 三. 阅读官方安装说明文档: http://wiki.codeblocks.org/index.php/Installing_Code::Blocks_from_source_on

Linux下源码安装Mysql5.5

本文主要介绍了如何在源码安装mysql5.5,所用系统为CentOS6.5 一.安装相应的开发环境 yum install -y ncurses-devel yum install -y libaio yum install -y bison yum install -y gcc-c++ yum install -y openssl-devel 二.安装cmake 跨平台编译器 # tar xf cmake-2.8.8.tar.gz # cd cmake-2.8.8 # ./bootstrap

图解Linux下源码安装PHP7.0.9 +Nginx

上一次,在<Linux下源码安装php7.0.6>,安装过PHP7.0.3,本文将记录安装PHP7.0.9过程. 测试环境 Linux 2.6.32-279.el6.i686 nginx-1.9.15.tar http://nginx.org/download/nginx-1.9.15.tar.gz php-7.0.9.tar.gz http://am1.php.net/distributions/php-7.0.9.tar.gz 安装Nginx wget http://nginx.org/d

linux下源码安装软件

在linux下的很多软件都是通过源码包方式发布的,这样做对于最终用户而言,虽然相对于二进制软件包,配置和编译起来繁琐点,但是它的可移植性却好得多,针对不同的体系结构,软件开发者往往仅需发布同一份源码包,不同的最终用户经过编译就可以正确运行,这也是非常符合c语言的设计哲学的,一次编写,到处编译么,而常见的二进制包,比如rpm和deb,软件开发者必须为每种特定的平台定制好专门的软件包,这个通过rpm文件的后缀名就可以初见端倪,比如ppc,sparc,i386之类,在这里不做过多的陈述,其实源码安装软

Linux下源码安装nginx服务器以及部分配置

    Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日.其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名.2011年6月1日,nginx 1.0.4发布. Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(

Linux下源码安装JDK7

安装说明 安装环境:Red Hat Enterprise Linux7.1安装方式:源码安装 软件:jdk-7u80-linux-x64.gz 安装 #首先查看系统原有JDK信息 rpm -qa | grep java #删除原有OpenJDK安装,使用我们自己的JDK,减少问题出错率(不检查依赖,直接删除rpm包) rpm -qa|grep java|xargs rpm -e --nodeps #上传安装文件到 /usr/local/ #进入安装目录 cd /usr/local/ #删除原安装

Linux下源码安装编译mysql数据库

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理. 下面是mysql数据库源码安装的具体步骤: 环境:redhat6.5 所需要的包:mysql-boost-5.7.11.tar.gz cmake-2.8.12.2-4.el6.x86_64.rpm         #要求cmake版本2.8及其以上 ##########mysql############ 下载安装包并进行解压缩: mysql-

CentOS 6.3下源码安装LAMP(Linux+Apache+Mysql+Php)环境

一.简介 什么是LAMP    LAMP是一种Web网络应用和开发环境,是Linux, Apache, MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而言都是在它所代表的方面功能非常强大的组件.    LAMP这个词的由来最早始于德国杂志“c't Magazine”,Michael Kunze在1990年最先把这些项目组合在一起创造了LAMP的缩写字.这些组件并不是开始就设计为一起使用的,但是,这些软件都是开源的,可以很方便的随时获得并免费使用,这就导致了这些组