LAMP源码安装

Posted winterforever

tags:

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

在安装之前首先把开发包组安装。

[root@tiandong63 ~]# yum groupinstall "Development Tools" "Development Libraries" -y

[root@tiandong63 ~]# yum install gcc gcc-c++ openssl-devel -y

上传需要的安装包:

[root@tiandong63 ~]# tar -xf apr-1.5.2.tar.gz -C /usr/local/src/

[root@tiandong63 ~]# cd /usr/local/src/apr-1.5.2/

[root@tiandong63 apr-1.5.2]# ./configure --prefix=/usr/local/apr && make -j 2 && make install

[root@tiandong63 ~]#tar -xf apr-util-1.5.4.tar.bz2 -C /usr/local/src/

[root@tiandong63 ~]#cd /usr/local/src/apr-util-1.5.4/

[root@tiandong63 apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr && make -j 2 && make install

[root@tiandong63 ~]tar -xf pcre-8.37.tar.bz2 -C /usr/local/src/

[root@tiandong63 ~]cd /usr/local/src/pcre-8.37/

[root@tiandong63 pcre-8.37]# ./configure --prefix=/usr/local/pcre && make -j 2 && make install

基础环境安装完成,下面编译安装apache。

[root@tiandong63 ~]# tar -xf httpd-2.4.16.tar.bz2 -C /usr/local/src/
[root@tiandong63 ~]# cd /usr/local/src/httpd-2.4.16/

[root@tiandong63 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 && make -j 2 && 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    apr-util路径

--enable-modules=most     

--enable-mpms-shared=all

--with-mpm=event

配置Apache启动脚本

 把启动脚本拷贝到开机启动项下面

[root@tiandong63 ~]# cp /usr/local/apache2.4/bin/apachectl /etc/init.d/apache2.4

修改配置脚本

[root@tiandong63 ~]# chkconfig apache2.4 on   设置开机自启

[root@tiandong63 ~]# /etc/init.d/apache2.4 start   启动

[root@tiandong63 ~]# netstat -tlunp|grep 80     查看
tcp 0 0 :::80 :::* LISTEN 76306/httpd

查看web服务运行的属组和属主

Apache运行的用户是daemon,Apache需要自己的用户去管理,添加一个Apache用户。

[root@tiandong63 ~]# useradd -M -s /sbin/nologin apache

[root@tiandong63 ~]# vim /usr/local/apache2.4/conf/httpd.conf  修改运行的用户和属组为Apache

更改目录权限

重启服务:

[root@tiandong63 ~]# /etc/init.d/apache2.4 restart

 

Apache编译安装完成

编译安装mysql

编译安装MySQL之前解决依赖关系

[root@tiandong63 ~]# yum install -y cmake  ncurses-devel

[root@tiandong63 ~]# tar -xvf mysql-5.6.26.tar.gz -C /usr/local/src/

[root@tiandong63 ~]# cd /usr/local/src/mysql-5.6.26/
[root@tiandong63 mysql-5.6.26]# useradd -M -s /sbin/nologin mysql

[root@tiandong63 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

参数解释:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql   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                          支持readline

-DENABLED_LOCAL_INFILE=1          允许本地倒入数据,启用加载本地数据

-DMYSQL_DATADIR=/usr/local/mysql/data       mysql数据库存放路径

-DMYSQL-USER=mysql        运行mysql的用户

[root@tiandong63 mysql-5.6.26]# make -j 4 && make install 

配置MySQL

[root@tiandong63 mysql-5.6.26]# chown -R mysql:mysql /usr/local/mysql/  

[root@tiandong63 mysql-5.6.26]# cd
[root@tiandong63 ~]# cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf   覆盖原配置文件
cp: overwrite `/etc/my.cnf\'? yes
[root@tiandong63 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld     启动脚本

[root@tiandong63 ~]# vim /etc/init.d/mysqld 

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

[root@tiandong63 ~]# chkconfig mysqld on     开机自启
[root@tiandong63 ~]# chkconfig --list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off

初始化数据库:

[root@tiandong63 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

查看初始化后data目录下有没有mysql和test等数据库

[root@tiandong63 ~]# ln -s /usr/local/mysql/bin/* /bin/   做一个软链接系统可以自己调用

[root@tiandong63 ~]# /etc/init.d/mysqld start
Starting MySQL..... SUCCESS!

[root@tiandong63 ~]# mysql_secure_installation  初始安全设置

安装php

[root@tiandong63 ~]# yum install -y libxml2-devel   解决依赖关系

[root@tiandong63 ~]# tar -xvf php-5.6.13.tar.bz2 -C /usr/local/src/

[root@tiandong63 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=/usr/local/php    安装路径

--with-mysql=/usr/local/mysql/     和MySQL结合,如果不跟路径编译出来的是低版本

--with-apxs2=/usr/local/apache2.4/bin/apxs    用apache的apxs工具将php编译成apache的一个模块

--with-config-file-path=/usr/local/php    Apache的主配置文件php.ini路径

[root@tiandong63 php-5.6.13]# make -j 4 && make install

[root@tiandong63 ~]# cp /usr/local/src/php-5.6.13/php.ini-production /usr/local/php/php.ini    PHP配置文件

检验编译安装的结果,只有有下面这两个文件(模块),代表我们的Apache支持PHP

[root@tiandong63 ~]# ll /usr/local/apache2.4/modules/httpd.exp
-rw-r--r-- 1 apache apache 14212 Mar 19 21:47 /usr/local/apache2.4/modules/httpd.exp
[root@tiandong63 ~]# ll /usr/local/apache2.4/modules/libphp5.so
-rwxr-xr-x 1 root root 26441595 Mar 20 00:53 /usr/local/apache2.4/modules/libphp5.so

[root@tiandong63 ~]# vim /usr/local/apache2.4/conf/httpd.conf     修改Apache的配置文件让其之处PHP

添加这两行

381 AddType application/x-httpd-php .php
382 AddType application/x-httpd-php-source .phps

[root@tiandong63 ~]# /etc/init.d/apache2.4 restart   重启服务

然后进行测试:

祈祷可以访问啊!!!!!!!!!!!!!!!!!

忙活这么久终于完成了,读者如有问题烦请及时联系。

笔者QQ:1127000483

以上是关于LAMP源码安装的主要内容,如果未能解决你的问题,请参考以下文章

源码编译安装LAMP

LAMP环境部署:Apache源码安装+MySQL二进制安装+PHP源码安装+Nginx源码安装

Lamp源码安装参考教程

web应用之LAMP源码环境部署

LAMP源码安装

Lamp架构nginxphpmysql源码编译安装