亲测CentOS 6.6 x86_64下源码安装LAMP平台(APACHE 2.4.16+MYSQL 5.6.17+PHP 5.6.7)

一、编译安装apache

1.安装编译环境:

#yum -y groupinstall ‘Development tools‘

#yum -y groupinstall ‘Desktop Platform Development‘

#yum install wget gcc gcc-c++ make re2c curl curl-devel libxml2 libxml2-devel libjpeg libjpeg-devel libpng libpng-devel libmcrypt libmcrypt-devel zlib zlib-devel openssl openssl-devel freetype freetype-devel gd gd-devel perl perl-devel ncurses ncurses-devel bison bison-devel libtool gettext gettext-devel cmake bzip2 bzip2-devel pcre pcre-devel(yum仓库中无libmcrypt包,故在下方需要重新便已安装libmcrypt)

2.编译安装apr

#cd /usr/local/src

#tar -zxvf apr-1.5.2.tar.gz

#cd apr-1.5.2

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

make && make install

3.编译安装apr-util

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

#cd apr-util-1.5.4

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

#make && make install

4.编译安装httpd

#tar -zxvf httpd-2.4.16.tar.gz

#cd httpd-2.4.16

#./configure --prefix=/usr/local/apache --enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mpms-shared=all --with-mpm=event --enable-deflate

#make && make install

#cp /usr/local/apache/conf/httpd.conf /usr/local/apache/conf/httpd.conf.bak #备份配置文件

#vi /usr/local/apache/conf/httpd.conf   #编辑配置文件

找到:#ServerName www.example.com:80

修改为:ServerName 172.24.0.2:80

找到:DirectoryIndex index.html

修改为:DirectoryIndex index.html index.php

找到:Options Indexes FollowSymLinks

修改为:Options FollowSymLinks    #不显示目录结构

找到AllowOverride None

修改为:AllowOverride All   #开启apache支持伪静态,有三处都做修改

LoadModule rewrite_module modules/mod_rewrite.so   #取消前面的注释,开启apache支持伪静态

vi /etc/profile  #添加apache服务系统环境变量

在最后添加下面这一行

export PATH=$PATH:/usr/local/apache/bin

#chown  daemon.daemon  -R /usr/local/apache/htdocs  #更改目录所有者

#chmod   700 /usr/local/apache/htdocs  -R #更改apache网站目录权限

启动apache

#/usr/local/apache/bin/apachectl -k start

检查是否启动

#ps -ef|grep httpd

#netstat -tplun|grep ":80"

二、编译安装mysql

1.编译安装cmake

#cd /usr/local/src

#tar -zxvf cmake-3.2.1.tar.gz

#cd cmake-3.2.1

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

#make && make install

#vim ~/.bash_profile

修改PATH=$PATH:$HOME/bin

PAHT=$PATH:$HOME/bin:/usr/local/cmake/bin

保存退出

#source ~/.bash_profile

2.编译安装mysql

#groupadd -r mysql

#useradd -g mysql -r -s /sbin/nologin  -M mysql

#tar -zxvf mysql-5.6.17.tar.gz

#cd mysql-5.6.17

#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DENABLED_LOCAL_INFILE=1 -DEXTRA_CHARSETS=all -DMYSQL_USER=mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

#gmake

#make install

#cd /usr/local/mysql/support-files

#cp mysql.server /etc/init.d/mysql

#cp my-default.conf /etc/my.cnf

#vim /etc/my.cnf

basedir = /usr/local/mysql

datadir = /usr/local/mysql/data

port = 3306

socket = /tmp/mysqld.sock

#chown -R mysql. /usr/local/mysql/data

#cd /usr/local/mysql/scripts

#./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --no-defaults --user=mysql

#service mysql start

#ps -ef | grep mysql(查看是否存在mysql进程)

#vim ~/.bash_profile

在PATH变量后面追加":/usr/local/mysql/bin",修改完成后的结果如下:

PATH=$PATH:$HOME/bin:/usr/local/cmake/bin:/usr/local/mysql/bin(注:/usr/local/cmake/bin目录为本实验编译安装所生成的目录,如果您的cmake是通过rpm或者是yum来安装的,无此路径。PATH=$PATH:$HOME/bin:/usr/local/mysql/bin)

#source ~/.bash_profile

也可修改全局变量

#vim /etc/profile

在最后添加

PATH=$PATH:/usr/local/mysql/bin:/usr/local/cmake/bin(注:/usr/local/cmake/bin为本实验编译安装所生成的目录。)

#mysql

mysql>\s

三、编译安装PHP

1.安装libmcrypt

#cd /usr/local/src

#tar -zxvf limcrypt-2.5.7.tar.gz

#cd libmcrypt-2.5.7

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

#make && make install

2.安装PHP

#tar -jxvf php-5.6.7.tar.bz2

#cd php-5.6.7

#./configure  --prefix=/usr/local/php  --with-apxs2=/usr/local/apache/bin/apxs  --with-config-file-path=/usr/local/php/etc  --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd  --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=/usr/local/libmcrypt/  --enable-soap  --enable-gd-native-ttf  --enable-mbstring  --enable-sockets  --enable-exif  --disable-ipv6(PHP 5.3以上的版本推荐使用mysqlnd驱动,详见:https://blog.linuxeye.com/395.html)

#make

#make test

#make install

#mkdir /usr/local/php/etc

#cp php.ini-production  /usr/local/php/etc/php.ini  #复制php配置文件到安装目录

#rm -rf /etc/php.ini   #删除系统自带的配置文件

#ln -s  /usr/local/php/etc/php.ini   /etc/php.ini   #创建配置文件软链接

#vi /usr/local/php/etc/php.ini    #编辑

找到:;open_basedir =

修改为:open_basedir = .:/tmp/   #防止php木马跨站,重要!!

找到:disable_functions =

修改为:disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname

#列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。

找到:;date.timezone =

修改为:date.timezone = PRC

找到:expose_php = On

修改为:expose_php = OFF  #禁止显示php版本的信息

找到:display_errors = On

修改为:display_errors = OFF  #关闭错误提示

配置apache支持php

vi /usr/local/apache/conf/httpd.conf  #编辑apache配置文件

在LoadModule php5_module        modules/libphp5.so这一行下面添加、

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps (注意:php .php这个点前面有一个空格)

service httpd restart    #重启apache

service mysqld restart   #重启mysql

测试篇

vim  /usr/local/apache/htdocsvi/index.php   #输入下面内容

<?php

phpinfo();

?>

:wq!   #保存

在客户端浏览器输入服务器IP地址,可以看到相关的配置信息!

四、安装xcache,为php加速

#cd /usr/local/src

#tar zxvf xcache-3.2.0.tar.gz

#/usr/local/php/bin/phpize

#./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config

#make && make install

安装结束时,会出现类似如下行:

Installing shared extensions:    /usr/local/php/lib/php/extensions/no-debug-zts-20131226/xcache.so

编辑php.ini,整合php和xcache

首先将xcache提供的样例配置导入php.ini

# mkdir /etc/php.d

# cp xcache.ini /etc/php.d(说明:xcache.ini文件在xcache的源码目录中。)

接下来编辑/etc/php.d/xcache.ini,找到extension开头的行,修改为如下行

extension = /usr/local/php/lib/php/extensions/no-debug-zts-20131226/xcache.so(注意:如果php.ini文件中有多条zend_extension指令行,要确保此新增的行排在第一位。)

至此,整个安装过程就结束了,下面简单介绍一下压力测试工具ab的使用。

ab使用方法

使用ab命令测试apache服务器性能:

-c concurrency:一次性发起的请求个数,默认为1;

-i:测试时使用HEAD方法,默认为GET;

-k:启用HTTP长连接请求方式;

-n requests:发起的模拟请求个数;默认为1个;请求数要大于等于并发连接数;

-q:静默模式,在请求数大于150个时不输出请求完成百分比;

输出结果:

Time taken for tests:从第一个请求连接建立到收到最后一个请求的响应报文结束所经历的时长;

Complete requests:成功的请求数;

简单测试:

ab -c 100 -n 1000 http://localhost/index.php

通过这种方法可以对web服务器性能做出简单的评估。

时间: 2024-11-08 23:44:32

亲测CentOS 6.6 x86_64下源码安装LAMP平台(APACHE 2.4.16+MYSQL 5.6.17+PHP 5.6.7)的相关文章

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.

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

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

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

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

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需要的最新版本库文

CentOS 下源码安装LAMP环境

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

ubuntu下源码安装LAMP及Laravel

前言 已经很久没写php代码了,以前是前后端都折腾,毕业入职以后就只是单纯写前端了 刚好前不久在nitrous上建了一个测试账户(ubuntu环境),于是就打算部署个Laravel玩玩,一个很火的php框架 于是乎,是的,我又得折腾一遍LAMP了(生无可恋脸...) nitrous上原本是已经部署好了apache2和php5的,可是php5的版本是5.5.9,而Laravel对php版本的最低要求是>=5.6.4 所以,蛋疼了,得重新装php了,更悲剧的是用自带的apt-get是无法安装特定版本

CentOS 7下源码安装MySQL 5.7

网上说linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有几十M左右,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点是安装速度快,安装步骤简单,缺点是安装包很大,300M左右(5.7版本的是600M左右), 对于第二种方法,我搞了一天,无果,到某个环节实在是无法走通,老大那边也不让搞了,隔了几天老大又吩咐我在生产服务器上安装mysql,这次我就按照第一种方法源码安装方式 下载源码安装包 http://dev.my

CentOS 7.4下源码安装 Apache HTTP Server(httpd-2.4.35)

CentOS 7.4下源码安装 Apache HTTP Server(httpd-2.4.35) 前提:确保安装了expat-devel, APR包 (apr-1.6.3.tar.gz 和 apr-util-1.6.1.tar.gz); 用YUM方式安装expat-devel 和 apr-util-devel yum -y install expat-devel yum -y install apr-util-devel 解压apr-1.6.3.tar.gz后进入该目录下,执行: ./confi

centos6.5下源码安装mysql密码修改

Centos下源码安装mysql密码破解方法: 方法一:首先停止mysql服务,: /etc/init.d/mysqldstop 停止mysql ps -ef |grep mysql 查看mysql是否关闭 然后以跳过权限方式后台启动 /usr/local/mysql/bin/mysqld_safe--skip-grant-tables --user=mysql & /usr/local/mysql/bin/mysql进入mysql 或者执行mysql回车进入mysql,然后修改密码. 修改My