centos6源码安装lamp----基于fastcgi方式(2台机器)

author author     2022-09-14     772

关键词:

源码搭建LAMP

CentOS6源码安装LAMP----基于fastcgi方式(2台机器)

软件包下载源:

搜狐镜像源:http://mirrors.sohu.com/

apache下载网:http://mirror.bit.edu.cn/apache/

pcre官网:http://www.pcre.org/

apr官网:http://apr.apache.org/

apache官网:http://httpd.apache.org/

mysql官网:https://www.mysql.com/

php官网:http://php.net/

freetds:http://download.csdn.net/download/xhu_eternalcc/7457555

官网:http://www.freetds.org/


实验环境:

CentOS6.5-x86_64 单台机器

IP 192.168.9.176  php

IP 192.168.9.225  apache+mysql

版本:

apr-1.5.2

apr-util-1.5.4

httpd-2.4.20

php-5.6.22

mysql-5.6.32


说明,因为php要连接mysql,所以安装顺序为apache,mysql,php      

注:httpd2.4版本需要较新的apr和apr-util



注:新机器要初始化:参考http://wupengfei.blog.51cto.com/7174803/1955545

注:(生产环境一般包放内网ftp下载比较快,一般前端用nginx反向代理至后端apache,通过fastcgi连接php,mysql独立并做集群)


一、编译安装apache
1、#yum安装httpd依赖软件
[[email protected]192-168-9-176 ~]# yum install -y gcc gcc-c++ libtool libtool-ltdl-devel make gd-devel freetype-devel libxml2-devel libjpeg-devel libpng-devel openssl-devel patch  
[[email protected] ~]# yum install -y curl-devel bzip2 pcre-devel zip2-devel bzip2-devel 
[[email protected] ~]# yum install -y mcrypt-devel zlib-devel wget

2、#编译安装apr
[[email protected] ~]# cd /usr/local/src/
[[email protected] src]# wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.5.2.tar.bz2
[[email protected] src]# tar xf apr-1.5.2.tar.bz2 
[[email protected] src]# cd apr-1.5.2
[[email protected] apr-1.5.2]# ./configure --prefix=/usr/local/apr
[[email protected] apr-1.5.2]# make && make install

3、编译安装apr-util
[[email protected] apr-1.5.2]# cd /usr/local/src/
[[email protected] src]# wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.5.4.tar.bz2
[[email protected] src]# tar xf apr-util-1.5.4.tar.bz2
[[email protected] src]# cd apr-util-1.5.4
[[email protected] apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[[email protected] apr-util-1.5.4]# make && make install

4、编译安装httpd
[[email protected] apr-util-1.5.4]# useradd -s /sbin/nologin www
[[email protected] apr-util-1.5.4]# cd /usr/local/src/
[[email protected] src]# wget http://apache.fayea.com//httpd/httpd-2.4.20.tar.bz2
[[email protected]  src]# tar xf httpd-2.4.20.tar.bz2 
[[email protected]  src]# cd httpd-2.4.20
[[email protected] httpd-2.4.20]# ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork
[[email protected] httpd-2.4.20]# make
[[email protected] httpd-2.4.20]# make install
[[email protected] httpd-2.4.20]# sed -i ‘s/User daemon/User www/g‘ /usr/local/apache/conf/httpd.conf
[[email protected] httpd-2.4.20]# sed -i ‘s/Group daemon/Group www/g‘ /usr/local/apache/conf/httpd.conf
[[email protected] httpd-2.4.20]# sed -i "/ServerName/s/#ServerName.*/ServerName localhost/g" /usr/local/apache/conf/httpd.conf


6、启动方法
#/usr/local/apache/bin/apachectl -k start|reload|restart|stop

7、测试验证
[[email protected] httpd-2.4.20]# curl -I http://192.168.9.176
HTTP/1.1 200 OK
Date: Fri, 11 Aug 2017 15:22:43 GMT
Server: Apache/2.4.20 (Unix)
Last-Modified: Mon, 11 Jun 2007 18:53:14 GMT
ETag: "2d-432a5e4a73a80"
Accept-Ranges: bytes
Content-Length: 45
Content-Type: text/html


二、编译安装MySQL

1、#下载安装包
[[email protected] httpd-2.4.20]# cd /usr/local/src/
[[email protected] src]# wget https://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz

2、#建立运行mysql用户和组为系统账号  
[[email protected] src]# groupadd -r mysql
[[email protected] src]# useradd -r -g mysql -s /sbin/nologin mysql

3、#编译安装
[[email protected] src]# yum install -y libaio libaio-devel numactl numactl-devel cmake ncurses-devel libxml2-devel libtool-ltdl-devel gcc-c++ autoconf automake bison zlib-devel
[[email protected] src]# tar xf mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz
[[email protected] src]# mv mysql-5.6.37-linux-glibc2.12-x86_64 /usr/local/mysql
#建议mysql使用独立设备独立目录,本实验只建立目录,独立设备请参考磁盘分区与挂载
[[email protected] src]# mkdir -p /data0/mysql
#更改属主属组
[[email protected] src]# chown -R mysql.mysql /usr/local/mysql
#初始化数据库
[[email protected] src]# cd /usr/local/mysql
[[email protected] mysql]# ./scripts/mysql_install_db --datadir=/data0/mysql --user=mysql
[[email protected] mysql]# cp ./support-files/my-default.cnf /data0/mysql/my.cnf
[[email protected] mysql]# echo "basedir = /usr/local/mysql
datadir = /data0/mysql
port = 3306
server_id = 1000
socket = /tmp/mysql.sock" >>/data0/mysql/my.cnf
[[email protected] mysql]# chown -R mysql.mysql /data0/mysql/
4,启动:
[[email protected] mysql]# /usr/local/mysql/bin/mysqld_safe --defaults-file=/data0/mysql/my.cnf &
[[email protected] mysql]# echo "/usr/local/mysql/bin/mysqld_safe --defaults-file=/data0/mysql/my.cnf &" >> /etc/rc.d/rc.local

6、#安全初始化
#安全验证初始化,设置root用户密码,删除匿名用户,禁止root用户远程连接,删除test库
[[email protected] mysql]# ./bin/mysql_secure_installation
#导出头文件
[[email protected] mysql]# ln -sv /usr/local/mysql/include/ /usr/include/mysql
#加载库文件
[[email protected] mysql]# echo "/usr/local/mysql/lib/mysql/" >>/etc/ld.so.conf
[[email protected] mysql]# ldconfig
[[email protected] mysql]# echo "PATH=$PATH:/usr/local/mysql/bin/" >> /etc/profile


三、编译安装PHP

1、#编译安装libmcrypt扩展
[[email protected] src]# cd /usr/local/src/
[[email protected] src]# wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz
[[email protected] src]# tar xf libmcrypt-2.5.7.tar.gz 
[[email protected] src]# cd libmcrypt-2.5.7
[[email protected] libmcrypt-2.5.7]# ./configure
[[email protected] libmcrypt-2.5.7]# make && make install

2、#编译安装freetds扩展
[[email protected] local]# cd /usr/local/src/
[[email protected] src]# wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-patched.tar.gz
[[email protected] src]# tar xf freetds-patched.tar.gz 
[[email protected] src]# cd freetds-1.00.53/
[[email protected] freetds-1.00.53]# ./configure --prefix=/usr/local/freetds --with-tdsver=7.4 --enable-msdblib 
[[email protected] freetds-1.00.53]# make && make install
[[email protected] freetds-1.00.53]# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/freetds/lib/

4、#下载安装包
[[email protected] src]# cd /usr/local/src/
[[email protected] src]# wget http://cn2.php.net/distributions/php-5.6.22.tar.bz2
[[email protected] src]# tar xf php-5.6.22.tar.bz2 
[[email protected] src]# cd php-5.6.22
[[email protected] php-5.6.22]#  ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/ --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr/ --enable-xml --enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt --with-mssql=/usr/local/freetds --with-bz2 --enable-maintainer-zts --with-curl --enable-ftp --enable-bcmath --with-gd --with-freetype-dir --enable-gd-native-ttf --with-iconv-dir --enable-mbstring --enable-calendar --with-gettext --enable-dom --enable-fpm
#说明:如果php5.3以上的版本,为了链接数据库,可以指定mysqlnd,这样本机就可以不用安装mysql和mysql开发包。5.4已经是默认设置。
如: --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd
[[email protected] php-5.6.22]# make
[[email protected] php-5.6.22]# make install

#为php提供配置文件
[[email protected] php-5.6.22]# cp php.ini-development /usr/local/php/etc/php.ini

5、编辑apache配置文件httpd.conf,apache支持php
[[email protected] php-5.6.22]# sed -i ‘/LoadModule php5_module/ aAddType application/x-httpd-php-source .phps‘ /usr/local/apache/conf/httpd.conf
[[email protected] php-5.6.22]# sed -i ‘/LoadModule php5_module/ aAddType application/x-httpd-php .php .php5‘ /usr/local/apache/conf/httpd.conf
[[email protected] php-5.6.22]# sed -i ‘/DirectoryIndex/ s/index.html/index.php index.html/‘ /usr/local/apache/conf/httpd.conf

#重启httpd
[[email protected] php-5.6.22]# /usr/local/apache/bin/apachectl -k restart
4、测试验证php
 "<?php
        phpinfo();
?>" > /usr/local/apache/htdocs/index.php
5、浏览器访问:
http://192.168.9.168
5、测试验证php连接数据库
[[email protected] php-5.6.22]# vim index.php 

<?php
        $link = mysql_connect(‘127.0.0.1‘,‘root‘,‘123456‘);
        if ($link)
             echo "Success...";
        else
             echo "Failure...";
        mysql_close()
?>
#浏览器访问
http://192.168.9.168

6、#ab压力测试
[[email protected] php-5.6.22]# ab -c 100 -n 10000 

四、测试Xcache为php加速
1、#编译安装
[[email protected] htdocs]# cd /usr/local/src/
[[email protected] src]# tar xf xcache-3.2.0.tar.bz2 
[[email protected] src]# cd xcache-3.2.0
[[email protected] xcache-3.2.0]# /usr/local/php/bin/phpize
[[email protected] xcache-3.2.0]# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config 
[[email protected] xcache-3.2.0]# make && make install
2、#编辑php.ini,整合php和xcache
[[email protected] xcache-3.2.0]# mkdir -p /etc/php.d
[[email protected] xcache-3.2.0]# cp xcache.ini /etc/php.d


#重启apache
[[email protected] xcache-3.2.0]# apachectl -k restart
#压力测试,看效果




centos6编译lamp基于fpm模式的应用wordpress

CentOS6编译LAMP基于FPM模式的应用wordpress引言:其实我们可以直接使用yum安装LAMP(Linux+Apache[httpd]+Mysql+PHP),比手动编译安装LAMP要简单的多,但在实际的生产环境中都会手动编译LAMP,这是为什么呢?是因为在centos6系统中yum安装的httpd... 查看详情

centos6.9编译安装lamp+xcache(代码片段)

Centos6.9编译安装LAMPapache2.4+Mysql5.7+php5.6.34+Fast-cgi+xcache实验环境:VMwareWorkstationPro14(试用版)系统平台:CentOSrelease6.9(Final)内核2.6.32-696.el6.x86_64Apache/2.4.29(Unix)PHP5.6.34(cli)xcache3.2.01.编译安装apache 查看详情

centos6.5下源码搭建lamp环境

一、准备工作-系统版本      Centos6.5已安装开发工具-所需源码包及版本      --Apache   httpd-2.2.31.tar.gz      --MySQL&nbs 查看详情

peak学linux--基于centos6.5搭建lamp并安装discuzx3.2

实验环境:VMwareWorkstation 10.0.0build-1295980centos6.532位(系统ip:192.168.10.50,与物理机桥接,保证可以上外网)所需的压缩包及下载地址mysql-5.1.72-linux-i686-glibc23http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.72-linux-i686- 查看详情

在centos6.5上编译安装lamp

LAMP组合的编译安装基于centos6.5实现httpd+phpmodules把php编译成httpd的DSO对象prefork:libphp5event,worker:libphp5-ztscgifastcgifpm:php作为独立的服务httpd对fastcgi协议的支持httpd-2.2需要额外安装fcgi模块httpd-2.4自带fcgi模块 安装次序httpdMariadbp 查看详情

lamp编译实现

...验环境为:   php-fpm和msyql编译为同一台主机(CentOS6.9)   httpd单独一台主机(CentOS6.9)一、简述LAMP:clienthttp(请求index. 查看详情

centos6.9基于fpm模式编译安装实现lamp应用wordpress(代码片段)

**准备工作:1LinuxCentos6.92php-7.2.1.tar.bz23apr-1.6.3.tar.bz24apr-util-1.6.1.tar.bz25httpd-2.4.29.tar.bz26phpMyAdmin-4.0.10.20-all-languages.zip7wordpress-4.9.1-zh_CN.tar.gz8xcache-3.2.0.tar.bz29mariadb- 查看详情

centos6部署lamp:httpd2.2+module模式

系统:Centos6httpd版本:2.2使用prefork工作模式 安装方法:使用源码包安装mariadb使用yum安装php 注:如果使用mariadb官方的yum源安装,速度很慢  一、安装mariadb: 1.    准备源码包650)this.width=650;"src="http... 查看详情

源码编译安装lamp

环境:centos6.6;httpd-2.2.34;mysql-5.5.55;php5.6.31#!/bin/bash#2017-08-12#author by Tan Wen Xin#Auto install LAMP#create DNS servercat>>/etc/resolv.conf<& 查看详情

centos6.8安装cacti

    cacti环境基于LAMP,本实验LAMP环境已编译安装成功。若直接yum安装cacti环境会把httpd,mysql,php也yum安装,与我们编译安装的LAMP环境造成冲突,所以本次实验只安装cacti,rrdtool,net-snmp.    安装rrdtoolyum&nb... 查看详情

centos6安装lamp并进行xcache加速

一丶LAMP1.什么是LAMPL:linux是免费开源软件,这意味着源代码可用的操作系统。A:apache(httpd)是使用中最受欢迎的一个开放源码的WEB服务器软件M:mysql,mariadb是多线程、多用户的SQL数据库管理系统。P:php,perl,pyth是一种编程语言最初设计... 查看详情

4-源码方式基于lamp架构搭建bbs论坛或者博客(代码片段)

...Apache五、编译安装PHP六、后续配置七、启动相关服务八、源码编译软件经验总结九、部署web应用排错1:排错2:排错3:大功告成!课程目标使用源码方式基于LAMP架构搭建BBS论坛或者博客本文成功搭建2个网站,一个个人博客,一... 查看详情

centos7实现基于源码编译安装lamp的wordpress应用

计划:host1安装httpd,phphost2安装mariadb 准备软件:apr-1.6.2.tar.gz      httpd-2.4.27.tar.bz2               查看详情

centos7实现基于源码编译安装lamp的wordpress应用

计划实现:host1安装httpd,phphost2安装mariadb 准备软件:apr-1.6.2.tar.gz      httpd-2.4.27.tar.bz2             &nbs 查看详情

centos7.3基于源码编译安装lamp的wordpress应用

软件环境:    apr-1.6.2.tar.gz        apr-util-1.6.0.tar.gz       http://apr.apache.org/   &nbs 查看详情

基于centos6.8平台最新源代码包lamp环境搭建(apache+mysql+php)

部署环境系统:CentOS6.8x86_64Apache:2.4.23MySQL:5.7.14PHP:7.0.10apr:1.5.2apr-util:1.5.4boost:1.59.0cmake:3.6.1pcre:8.39软件包准备这里CentOS6.8系统(无需图形环境)的安装过程略,使用个人电脑(Windows系统)的浏览器访问Apache官方网站&nbs... 查看详情

源码安装lamp架构

...phpmyadmin,在浏览器验证即可,三、实验环境与准备一台Centos6虚拟机,网卡设置为桥接模式,并连接xshell四、实验分析与设计思路在Centos6搭建LAMP架构,首先搭建网络YUM仓库,并关闭防火墙和selinux机制,安装httpdphpmariadb及php结合... 查看详情

2-24-源码编译搭建lamp环境-作业(by小甘丶)

...装上课的内容要求:实验环境:VMwareVirtualMachine:SystemVersion:CentOS6.8(Gan35)IPAddress:192.168.31.35(Birdege)1、用rpm包安装方式搭建一个LAMP环境,并测试是否能够解析PHP页面安装LAMP环境检查安装包是否已安装rpm-qa|grephttpdrpm-qa|grepmysql*rpm-qa|gr 查看详情