LAMP编译安装

一 、apache2.4.24编译安装
1.1 安装依赖软件包Apr、Apr-util、PCRE
Apr、Apr-util 可以从apache官方获取
PCRE下载地址 http://sourceforge.net/projects/pcre/files/pcre/8.32/pcre-8.32.tar.bz2

Apr 编译安装
./configure --prefix=/usr/local/apr
make
make test
make install

Apr-util 编译安装
./configure --prefix=/usr/local/apr-util -with-apr=/usr/local/apr
make
make test
make install

PCRE编译安装
./configure --prefix=/usr/local/pcre
make
make check
make install

1.2 编译apache
从apache官方网站下载apache软件包
# wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.25.tar.gz
# tar -zxvf httpd-2.4.25.tar.gz
# cd httpd-2.4.25
# ./configure --prefix=/usr/local/apache --enable-mods-shared=all --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ 其中--enable-mods-shared启用所有支持的动态加载模块
# make
# make install
# /usr/local/apache/bin/apachectl start //启动apache

1.3 注册apache为系统服务
# /usr/local/apache/apachectl /etc/init.d/httpd
# chkconfig -add httpd
# service httpd start

二、编译安装mysql

mysql5.5以后是通过cmake来编译的

2.1: 下载软件包
# wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.15.tar.gz

2.2:解压,安装前编译,安装
# tar -zxvf mysql-5.5.15.tar.gz
# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DINSTALL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTAR_CHARSETS=all -DENABLED_LOCAL_INFILE=1
# make&&make install

-DSYSCONFDIR=/etc //指定初始化文件目录
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录
-DINSTALL_DATADIR=/usr/local/mysql/data //数据库存放目录
-DDEFAULT_CHARSET=utf8 //使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci //校验字符
-DEXTRA_CHARSETS=all //安装所有扩展字符集
-DENABLED_LOCAL_INFILE=1 //允许从本地导入数据

2.3: 创建mysql用户组并设置适当的目录权限
# groupadd mysql
# useradd -g mysql mysql -s /bin/false
# cd /usr/local/mysql
# chown -R mysql:mysql data/

2.4: 创建my.cnf配置文件
/etc目录下面默认有一个my.cnf,直接覆盖即可 , 默认的/etc/my.cnf 文件不完善
# cp ./support-files/my-huge.cnf /etc/my.cnf
输入y覆盖
编辑此文件,在[mysqld]下面添加
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

2.5: 初始化数据库,创建系统数据库的表
# ./scripts/mysql_install_db –user=mysql –defaults-file=./my.cnf

2.6: 配置mysql启动
# ./bin/mysqld_safe –user=mysql (手动启动)
# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
# chmod 755 /etc/init.d/mysqld
# vi /etc/rc.d/init.d/mysqld #编辑  
basedir = /usr/local/mysql #MySQL程序安装路径  
datadir = /data/mysql/data #MySQl数据库存放目录 
# chkconfig mysqld on
# service mysqld start

2.7: 设置mysql环境变量
# vi /etc/profile #把mysql服务加入系统环境变量:在最后添加下面这一行  
export PATH=$PATH:/usr/local/mysql/bin  

下面这两行把myslq的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定mysql的库文件地址。  
ln -s /usr/local/mysql/lib /usr/lib/mysql  
ln -s /usr/local/mysql/include/mysql /usr/include/mysql
shutdown -r now #需要重启系统

2.8:设置mysql 管理员密码
默认安装mysql的管理员密码是空的,用以下方法修改密码,比如我修改成123456
# usr/local/mysql/bin/mysqladmin -u root -p password “123456″

三、编译安装PHP
3.1 下载PHP源码包
# wget http://cn2.php.net/distributions/php-5.5.15.tar.bz2
# tar -jxvf php-5.5.15.tar.bz2
3.2 添加epel源
# rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
3.3 安装依赖
# yum install gcc gcc-c++ bison bison-devel zlib-devel libmcrypt libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel
3.4 创建www用户
# groupadd www
# useradd -g www -s /sbin/nologin -M www
3.5 编译
# cd php-5.5.15
# ./configure \
--prefix=/usr/local/php \
--with-config-file-path=/etc \
--enable-inline-optimization \
--disable-debug \
--disable-rpath \
--enable-shared \
--enable-opcache \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-gettext \
--enable-mbstring \
--with-iconv \
--with-mcrypt \
--with-mhash \
--with-openssl \
--enable-bcmath \
--enable-soap \
--with-libxml-dir \
--enable-pcntl \
--enable-shmop \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-sockets \
--with-curl \
--with-zlib \
--enable-zip \
--with-bz2 \
--with-readline \
--without-sqlite3 \
--without-pdo-sqlite \
--with-pear
安装
# make -j4
# make install

重新安装:
# make clean
# make clean all
# ./configure ...
# make -j4
# make install

配置 PHP

配置文件
# cp php.ini-development /etc/php.ini
PHP-fpm 服务
# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
# chmod +x /etc/init.d/php-fpm
启动 php-fpm
# service php-fpm start
Starting php-fpm done
php-fpm 可用参数 start|stop|force-quit|restart|reload|status

四、关于apache配置

4.1 php整合到apache

LoadModule php5_module modules/libphp5.so
ServerName localhost:80


AllowOverride none
Require all granted


DirectoryIndex index.html index.php


Require all granted

AddType application/x-httpd-php .php

4.2 用mod_vhost_alias构建apache的大型主机系统

LoadModule vhost_alias_module modules/mod_vhost_alias.so
Include conf/extra/httpd-vhosts.conf

建立文件夹放置所有虚拟主机的根目录
# mkdir /usr/local/apache/vhosts
编辑一个单独的大量虚拟主机的配置文件
# vim /usr/local/apache/conf/extra/much_vhosts.conf
UseCanonicalName Off
LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon
CustomLog logs/access_log vcommon
VirtualDocumentRoot /usr/local/apache/vhosts/%0
Options None
AllowOverride None
Order allow,deny
Allow from all

在主配置文件把上面的配置文件Include
# echo "Include conf/extra/much_vhosts.conf" >> /usr/local/apache/conf/httpd.conf
查看配置文件语法错误
# /usr/local/apache/bin/apachectl -t
重新启动apache
# /usr/local/apache/bin/apachectl restart

相关新闻

联系我们

全国服务热线

400-033-9553

电子邮件:admin@example.com
工作时间:09:00-17:00 周一至周五

在线客服
关注微信
关注微信
分享本页
返回顶部