LAMP编译安装只PHP以模块化的方式工作

php在apache下一般有三种工作方式:CGI,Apache模块,FastCGI

在CGI模式下,如果用户请求一个php文件,web服务器就会调用php解析器去解析这个文件,然后把结果返回给客户端。

在apache模块模式下,将php解析器作为了apache的一个模块,这样php解析器就与web服务器一起运行。

在fastcgi模式下,web服务器不会像cgi那样每次都启动一个新的进程,而是将内容传递到一个已有的进程中(这个进程在web服务器启动时就开启了,而且不会退出),这个进程就会一次次的处理来自客户端的请求。

这里我们将演示以模块化的方式工作的LAMP。安装的流程是

httpd--->mariadb--->php--->phpMyadmin--->Xcache

一.编译安装httpd,我们这里的编译安装都是在CentOS6环境下进行的。

编译前的环境准备:

apr-1.5.0.tar.bz2--->apr-util-1.5.3.tar.bz2---> httpd-2.4.10.tar.bz2

httpd-2.4.10编译过程也要依赖于pcre-devel软件包,需要事先安装。

包组:Development tools ,Server Platform Development

接下来我们就可以进行编译了:

1,编译 apr-1.5.0.tar.bz2

 yum groupinstall "Devlopment Tools" "Server Platform Development" -y
 yum install pcre-devel
[[email protected] tmp]# tar xf apr-1.5.0.tar.bz2 
[[email protected] tmp]# cd apr-1.5.0
[[email protected] apr-1.5.0]# ./configure --prefix=/usr/local/apr
[[email protected] apr-1.5.0]# make && make install

2,编译 apr-util-1.5.3.tar.bz2

[[email protected] tmp]# tar -xf apr-util-1.5.3.tar.bz2 
[[email protected] tmp]# cd apr-util-1.5.3
[[email protected] apr-util-1.5.3]# ./c
configure  crypto/    
[[email protected] apr-util-1.5.3]# ./configure --prefix=/usr/loacl/apr-util --with-apr=/usr/local/apr
[[email protected] apr-util-1.5.3]# make && make install

3,编译 httpd-2.4.10.tar.bz2

[[email protected] tmp]# tar -xf httpd-2.4.10.tar.bz2 
[[email protected] tmp]# cd httpd-2.4.10
[[email protected] httpd-2.4.10]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-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
[[email protected] httpd-2.4.10]# make && make install

这样的话我们的httpd-2.4就编译完成了

[[email protected] ~]# vim /etc/profile.d/httpd24.sh
export PATH=/usr/local/apache/bin:$PATH
   
[[email protected] ~]# vim /etc/profile.d/httpd24.sh
[[email protected] ~]# . /etc/profile.d/httpd24.sh
[[email protected] ~]# echo $PATH
/usr/local/apache/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[[email protected] ~]# clear
[[email protected] ~]# cd /etc/rc.d/init.d/  
[[email protected] init.d]# cp httpd httpd24
[[email protected] init.d]# vim httpd24

为httpd24提供的脚本中,我们只需要修改一下

接着我们把httpd24加到服务中去,然后启动就可以了

[[email protected] httpd]# chkconfig --add httpd24
[[email protected] httpd]# chkconfig httpd24 on
[[email protected] httpd]# chkconfig --list httpd24
httpd24        0:off1:off2:on3:on4:on5:on6:off

修改httpd的主配置文件,设置其Pid文件的路径

编辑/etc/httpd/httpd.conf,添加如下行即可:

PidFile  "/var/run/httpd/httpd.pid"

二.编译安装mariadb,我们这里使用的是mariadb的通用二进制包来编译。

1、准备数据存放的文件系统

新建一个逻辑卷,并将其挂载至特定目录即可。这里不再给出过程。

这里假设其逻辑卷的挂载目录为/mydata,而后需要创建/mydata/data目录做为mysql数据的存放目录。

[[email protected] tmp]# tar -xf mariadb-5.5.43-linux-x86_64.tar.gz -C /usr/local
[[email protected] tmp]# cd /usr/local
[[email protected]localhost local]# ln -sv mariadb-5.5.43-linux-x86_64/  mysql
`mysql‘ -> `mariadb-5.5.43-linux-x86_64/‘

2、新建用户以安全方式运行进程:

# groupadd -r mysql ###创建系统组
# useradd -g mysql -r -s /sbin/nologin -M -d /mydata/data mysql 
# chown -R mysql:mysql /mydata/data 
[[email protected] mysql]# scripts/mysql_install_db --user=mysql --datadir=/mydata/data
Installing MariaDB/MySQL system tables in ‘/mydata/data‘ ...###指明数据库位置在/mydata/data

3.接着我们要为数据库提供主配置文件

[[email protected] ~]# cd /usr/local/mysql
[[email protected] mysql]# cp support-files/my-large.cnf  /etc/my.cnf
cp: overwrite `/etc/my.cnf‘? y

并修改此文件中thread_concurrency的值为你的CPU个数乘以2,比如这里使用如下行:

thread_concurrency = 2

另外还需要添加如下行指定mysql数据文件的存放位置:

datadir = /mydata/data

4.位数据库提供服务脚本

[[email protected] ~]# cd /usr/local/mysql
[[email protected] mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
[[email protected] mysql]# chmod +x /etc/rc.d/init.d/m
mdmonitor   messagebus  mysqld      
[[email protected] mysql]# chmod +x /etc/rc.d/init.d/mysqld 
[[email protected] mysql]# chkconfig --add mysqld
[[email protected] mysql]# chkconfig mysqld on
[[email protected] mysql]# chkconfig --list mysqld
mysqld         0:off1:off2:on3:on4:on5:on6:off
[[email protected] mysql]#

接下来,启动服务,看是否能启动成功

[[email protected] ~]# service mysqld start
Starting MySQL............... SUCCESS!

我们要给数据库安全初始化

[[email protected] ~]# cd /usr/local/mysql/bin
[[email protected] bin]# . mysql_secure_installation ###安全初始化

至此,我们的数据编译完毕。

三,编译PHP

时间: 2025-01-04 00:11:31

LAMP编译安装只PHP以模块化的方式工作的相关文章

LAMP编译安装之PHP以fpm的方式结合apache工作

前面一个博文介绍了怎么用编译的方式搭建一个LAMP,这里我就不再一一描述了,我这里详细介绍一下PHP以fpm的方式工作: 如果想让编译的PHP支持mcrypt扩展,在这里除了libmcrypt这个包之外还需要安装 mhash-0.9.9.9-3.el6.x86_64 mhash-devel-0.9.9.9-3.el6.x86_64 [[email protected] tmp]# tar xf  php-5.4.40.tar.bz2  [[email protected] tmp]# cd ph

LAMP 编译安装

案例(一)LAMP apache.php(为apahce的模块).mysql在同一台主机上编译安装 编译版本:       httpd-2.4.9        mariadb-5.5.36        PHP-5.4.26    一.httpd编译安装和虚拟主机的配置    httpd-2.4编译步骤:        1.安装编译适用于httpd-2.4的apr            # rpm -qa |grep apr-------检查当前主机的apr版本信息            #y

LAMP编译安装之———httpd

LAMP(Linux- Apache-MySQL-PHP)网站架构是目前国际流行的Web框架,该框架包括:Linux操作系统,Apache网络服务器,MySQL数据 库,Perl.PHP或者Python编程语言,所有组成产品均是开源软件,是国际上成熟的架构框架,很多流行的商业应用都是采取这个架构,和 Java/J2EE架构相比,LAMP具有Web资源丰富.轻量.快速开发等特点,微软的.NET架构相比,LAMP具有通用.跨平台.高性能.低价格的 优势,因此LAMP无论是性能.质量还是价格都是企业搭

马哥学习笔记七——LAMP编译安装之MYSQL

1.准备数据存放的文件系统 新建一个逻辑卷,并将其挂载至特定目录即可.这里不再给出过程. 这里假设其逻辑卷的挂载目录为/mydata,而后需要创建/mydata/data目录做为mysql数据的存放目录. 2.新建用户以安全方式运行进程: # groupadd -r mysql # useradd -g mysql -r -s /sbin/nologin -M -d /mydata/data mysql # chown -R mysql:mysql /mydata/data 3.安装并初始化my

马哥学习笔记八——LAMP编译安装之PHP及xcache

1.解决依赖关系: 请配置好yum源(可以是本地系统光盘)后执行如下命令: # yum -y groupinstall "X Software Development" 如果想让编译的php支持mcrypt扩展,此处还需要下载如下两个rpm包并安装之: libmcrypt-2.5.7-5.el5.i386.rpm libmcrypt-devel-2.5.7-5.el5.i386.rpm 2.编译安装php-5.4.13 首先下载源码包至本地目录. # tar xf php-5.4.13

Linux之LAMP编译安装

一.编译安装httpd2.4版本 1.httpd程序依赖于apr和arp-util 注:arp是apache的可移植运行环境(相当于是http的虚拟机,在Linux和windows都可用) 在编译安装前我们需要安装一下开发包组 yum -y groupinstall "Development Tools" yum -y groupinstall "Server Platform Development" HTTP2.4版本依赖于apr1.4以上的版本,因此我们安装a

LAMP编译安装之Apache+php+mysql

环境模型: (1)PHP作为apache的模块编译安装. (2)mysql数据库在另一台服务器上安装.版本为MariaDB5.5.33    IP:192.168.1.124 (3)PHP版本5.4.36,http的版本2.4 (4)安装Apache和php的主机IP为192.168.1.123. 一.编译安装apache    1.解决依赖关系     httpd-2.4.9需要较新版本的apr和apr-util,因此需要事先对其进行升级.升级方式有两种,一种是通过源代码编译安装,一种是直接升

apache/mysql/php编译安装及支持xcache和fastcgi方式运行

一.编译安装apache     1.安装环境:yum install gcc gcc-c++ openssl-devel libtool -y     2.安装apr.apr-util及pcre         tar jxf apr-1.5.1.tar.bz2         cd apr-1.5.1         ./configure --prefix=/usr/local/apr         make && make install              tar jxf

LAMP编译安装(一)——安装Apache2.4

背景介绍 LAMP是LNMP结构提出之前风靡了很久的结构,本系列就从无到有一点点介绍LAMP的编译安装.首先,介绍下本系列的拓扑结构图 此时服务器响应客户端访问可以分为几种应答方式: 1.客户端向服务器端发起请求 2.服务器端查看请求类型,当为静态页面请求,直接返回结果 1.客户端向服务器端发起请求 2.服务器端查看请求类型,当为动态页面请求,通过配置文件中设置的反向代理,通过fcgi协议交给后端PHP服务器 3.PHP服务器上启用php-fpm服务,监听在一个套接字上想用请求,并将结果反馈给h