LAMP的编译安装

一、编译安装amp:

(1)系统环境:centos6,7

httpd依赖于apr和apr-util

appache protable runtime

(2)开发环境:

Development Tools,Server Platform Development

(3)各程序的版本:

httpd:2.2,2.4

php:5.x

mysql:5.1,5.5,5.6,5.7,5.8

mariadb:5.x,10.x

(4)httpd+php

modules:–with-apxs=

prefork:libphp5.so

worker,event:libphp5-zts.so

fpm:

5.3.3-,手动打上fpm patch;

5..3.3+,自带了fpm,编译时只需要使用–fpm选项;

过程:

先安装am,再安装p

安装MySQL:

预制的二进制程序包:

os vendor:mariadb-devel或mysql-devel;

项目官方提供的

二进制格式的程序包:展包即用;

源代码:编译安装

第一种安装:

(1)yum install mariadb-devel

(2)yum install mariadb-server

假如部署mysql时,将http和mysql安装在不同机器上,那么本台安装http的服务器只需安装好开发环境即可,无需安装mariadb-server.只在另一台上安装mariadb-server即可。

以模块化安装,割裂为两台主机。以fpm安装可以分割为三台主机。

第二种(二进制格式程序安装):

移除mariadb-server 和mariadb-devel

(1)获取tar包,创建mysql用户和组

(2) tar xf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local

(3)ln -sv mariadb-5.5.46-linux-x86_64 mysql

数据库默认存在于data目录下

(4)改权限:chown -R root:mysql ./*

(5)创建存放数据的文件目录mkdir -pv /mydata/data

chown mysql:mysql /mydata/data

(6)scripts/mysql_install_db –help

(7)[root@centos7 mysql]# scripts/mysql_install_db –datadir=/mydata/data –user=mysql

(8)ls  /mydata/data/

LAMP的编译安装1.jpg

(9) 配置文件的修改cp support-files/my-large.cnf /etc/my.cnf

LAMP的编译安装2.jpg

修改thread_concurrency = 2

datadir=/mydata/data

skip_name_resolve=ON

innodb_file_per_table=ON

其中2指的是CPU的核心数乘以2.

(10)提供mysql运行的脚本cp support-files/mysql.server /etc/rc.d/init.d/mysqld

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

(11)chkconfig –add mysqld

chkconfig –list

(12)开启服务service mysqld start

(13)vim /etc/profile.d/mysql.sh

LAMP的编译安装3.jpg

(14) . /etc/profile.d/mysql.sh

二、安装httpd-2.4

(1) yum groupinstall "Development Tools" "Server Platform Development"

(2)yum install pcre-devel openssl-devel libevent-devel apr-devel apr-util-devel

(3)./configure –prefix=/usr/local/apache2 –sysconfdir=/etc/httpd –enable-so –enable-cgi –enable-modules=most –enable-mpms-shared=all –with-mpm=prefork –with-zlib –with-apr=/usr –with-apr-util=/usr

(4)make

(5)make install

(6)vim /etc/profile.d/apache.sh

LAMP的编译安装4.jpg

(7) . /etc/profile.d/apache.sh

(8) apachectl start

LAMP的编译安装5.jpg

出现如下报错,原来是/etc/hosts文件中没有写主机信息

网友解决方案:http://www.cnblogs.com/Anker/p/3355039.html

LAMP的编译安装6.jpg

三、安装php5

(1)yum install gd-devel freetype-devel libmcrypt-devel libxml2-devel

(2)./configure –prefix=/usr/local/php –with-mysql –with-openssl –with-mysql=/usr/bin/mysql_config –enable-mbstring –enable-xml –enable-sockets –with-freetype-dir –with-gd –with-libxml-dir=/usr –with-zlib –with-jpeg-dir –with-png-dir –with-mcrypt –with-apx2=/usr/local/apache2/bin/apxs –with-config-file-path=/etc/php.ini –with-config-file-scan-dir=/etc/php.d/

(3)make -J #

(4)make install

(6)cp php.ini-production /etc/php.ini

(7)makedir /etc/php.d/

注意:如果httpd使用线程模型MPM,需要额外的–enable-maintainer-zts选项;

注意:如果要以fpm方式允许php,需要编译时移除–with-apxs选项。

注意:如果独立安装的mysql-server,假设安装在/usr/local/mysql目录下,则需要使用类似如下的.configure命令。

./configure –prefix=/usr/local/php –with-mysql=/usr/local/mysql –with-openssl –with-mysql=/usr/local/bin/mysql/mysql_config –enable-mbstring –enable-xml –enable-sockets –with-freetype-dir -with-gd –with-libxml-dir=/usr –with-png-dir –with-apxs2=/usr/local/apache2/bin/apxs –with-config-file-path=/etc/php.ini –with-config-file-scan-dir=/etc/php.d/

整合php

httpd.conf配置文件中:

AddType application/x-httpd-php.php

DirectoryIndex index.php index.html

原创文章,作者:178babyhanggege,如若转载,请注明出处:http://www.178linux.com/51141

(0)
178babyhanggege178babyhanggege
上一篇 2016-10-17
下一篇 2016-10-17

相关推荐

  • 用户、组的创建和管理

    用户的创建 useradd usermod userdel useradd:创建用户 create a new user or update default new user information     useradd [options]… LOGIN     &…

    Linux干货 2016-08-03
  • linux终端类型

           关键词:linxu终端类型,串行端口终端,伪终端,控制终端,控制台终端,虚拟终端        摘要:终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。tty是Teletype的缩写。在Linux系统的设备特殊文件目录/dev/下,终端特殊…

    Linux干货 2016-10-19
  • Linux发展史

    日期:2016-10-12  Bell,MIT与GE的『Multics』系统     早期的计算机还很不普遍,除非是军事或者高科技用途,或者学术单位的学术研究,否则真的很难接触到。而且计算机架构很难使用。那个时候,程序设计者必须先将程序相关的信息在读卡纸上面打洞然后将读卡纸插入卡片阅读机来将信息读入主机中运算…

    Linux干货 2016-10-14
  • haproxy 动静分离负载均衡、​stats页面实现​。

    实验环境:一台主机提供haproxy、nfs、mariadb,后端2台apache部署wordpress。 实验目的:haproxy使得动静分离、以及开启stats页面。 haproxy简单介绍 负载均衡的解决方案,支持4、7层,特点是单进程模型(可配置为多进程模型)单进程能支持非常大的并发链接数量(相比较其他软件)。 到今天,马哥课程中的负载均衡方案(lv…

    Linux干货 2017-02-18
  • 第八周作业

    1. 写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态;     在线的主机使用绿色显示;     不在线的主机使用红色显示; #!/bin/bash # for i in {1..254};do         pi…

    Linux干货 2017-02-24
  • N26-第二周

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。(盗图了,哈哈哈) 文件查看类命令:cat, tac, head, tail, more, less,touch    cat 查看文件内容   tac命令   反向查看文件内容  注:可对照上图 分屏查看命令:more  …

    Linux干货 2017-01-07