07linux基础服务-编译安装LAMP

Posted hackerlin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了07linux基础服务-编译安装LAMP相关的知识,希望对你有一定的参考价值。

1、安装apr和apr-util依赖

1.1安装apr

[root@test src]# tar -zxvf apr-1.5.2.tar.gz

[root@test src]# cd apr-1.5.2

[root@test apr-1.5.2]# ./configure --prefix=/usr/local/apr

[root@test apr-1.5.2]# make && make install

1.2安装apr-util

[root@test src]# tar -jxvf apr-util-1.5.4.tar.bz2

[root@test src]# cd apr-util-1.5.4

[root@test apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

1.3安装pcre

[root@test src]# tar -jxvf pcre-8.37.tar.bz2

[root@test pcre-8.37]# ./configure --prefix=/usr/local/pcre

[root@test pcre-8.37]# make && make install

2、编译安装apache

[root@test src]# tar -jxvf httpd-2.4.16.tar.bz2

[root@test src]# cd httpd-2.4.16

[root@test httpd-2.4.16]# ./configure --prefix=/usr/local/apache2.4 --enable-so --enable-rewrite --enable-ssl --with-pcre=/usr/local/pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mpms-shared=all --with-mpm=event

报错1:

技术图片

解决方法:yum -y install openssl-devel

[root@test httpd-2.4.16]# make && make install

注:编译参数

--prefix=/usr/local/apache2.4  #指定安装路径

--enable-so  #支持动态加载模块

--enable-rewrite  #支持网站地址重写

--enable-ssl  #支持ssl加密

--with-pcre=/usr/local/pcre  #pcre路径

--with-apr=/usr/local/apr  #apr路径

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

apache的启动脚本为:

[root@test httpd-2.4.16]# /usr/local/apache2.4/bin/apachectl start

3、编译安装mysql

3.1安装相关依赖

[root@test httpd-2.4.16]# yum -y install cmake ncurses-devel

3.2安装MySQL

[root@test src]# tar -zxvf mysql-5.6.26.tar.gz

[root@test src]# cd mysql-5.6.26

[root@test mysql-5.6.26]# cmake \
> -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
> -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
> -DDEFAULT_CHARSET=utf8 \
> -DDEFAULT_COLLATION=utf8_general_ci \
> -DWITH_EXTRA_CHARSETS=all \
> -DWITH_MYISAM_STORAGE_ENGINE=1 \
> -DWITH_INNOBASE_STORAGE_ENGINE=1 \
> -DWITH_MEMORY_STORAGE_ENGINE=1 \
> -DWITH_READLINE=1 \
> -DENABLED_LOCAL_INFILE=1 \
> -DMYSQL_DATADIR=/usr/local/mysql/data \
> -DMYSQL-USER=mysql

[root@test mysql-5.6.26]# make && make install

编译参数解释:

> -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \    #指定mysql的安装根目录,目录在安装的时候回自动创建,这个值也可以在服务器启动时,用--basedir来设置
> -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \   #服务器与本地客户端进行通信的unix套接字文件,必须是绝对路径,默认位置/tmp/mysql.sock,可以在服务器启动时用--socket 改变
> -DDEFAULT_CHARSET=utf8 \    #mysql 默认使用的字符集,不指定将默认使用latin1西欧字符集
> -DDEFAULT_COLLATION=utf8_general_ci \    #默认字符校对
> -DWITH_EXTRA_CHARSETS=all \      #指定mysql扩展字符集,默认值也是all支持所有的字符集
> -DWITH_MYISAM_STORAGE_ENGINE=1 \
> -DWITH_INNOBASE_STORAGE_ENGINE=1 \
> -DWITH_MEMORY_STORAGE_ENGINE=1 \   #静态编译myisqm、innobase、memory存储引擎到mysql服务器,这样mysql就支持者三种存储引擎
> -DWITH_READLINE=1 \    #支持readline库
> -DENABLED_LOCAL_INFILE=1 \  #允许本地导入数据,启用加载本地数据
> -DMYSQL_DATADIR=/usr/local/mysql/data \ #mysql数据库存放路径
> -DMYSQL-USER=mysql  #运行MySQL的用户

 3.2 配置MySQL

[root@test mysql-5.6.26]# useradd -M -s /sbin/nologin mysql    #创建管理mysql的用户

[root@test mysql-5.6.26]# chown -R mysql:mysql /usr/local/mysql/  #修改文件夹的属主属组

[root@test mysql-5.6.26]# cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf  #复制配置文件

[root@test mysql-5.6.26]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld  #复制启动脚本文件

[root@test mysql-5.6.26]# vim /etc/init.d/mysqld  #修改配置脚本文件如下内容

basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

3.3初始化数据库

[root@test mysql-5.6.26]# /usr/local/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql

[root@test mysql-5.6.26]# service mysqld start    #启动MySQL

四、编译安装php

[root@test php-5.6.13]# yum -y install libxml2-devel

[root@test src]# tar -xvf php-5.6.13.tar.bz2

[root@test src]# cd php-5.6.13

[root@test php-5.6.13]# ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/ --with-apxs2=/usr/local/apache2.4/bin/apxs --with-config-file-path=/usr/local/php

参数解释:

--prefix=  #指定安装路径

--with-apxs2  #用apache的apxs工具将php编译成apache的一个模块

--with-mysql  #与mysql结合,如果不跟路径,编译出来的版本将是低版本

--with-config-file-path  #php的主配置文件php.ini路径

[root@test php-5.6.13]# make -j 3 && make install

[root@test php-5.6.13]# cp php.ini-production /usr/local/php/php.ini  #复制配置文件

五、配置apache支持PHP

……

248    <IfModule dir_module>

249       DirectoryIndex index.html index.php           #添加index.php

250    </IfModule>

……

376     AddType application/x-compress .Z

377     AddType application/x-gzip .gz .tgz       #上面两行是以前有的

378     AddType application/x-httpd-php .php      #下面两行是添加的,需要添加以支持PHP

379     AddType application/x-httpd-php-source .phps

以上是关于07linux基础服务-编译安装LAMP的主要内容,如果未能解决你的问题,请参考以下文章

LAMP架构安装

LAMP源码编译

LAMP架构各部分的安装

LAMP架构部署——编译安装PHP

LAMP架构部署——编译安装MySQL

LAMP架构部署——编译安装Apache