安装之前首先要安装所需的依赖库,将httpd mysql php等所需要的源码包上传到主机,或者wget 方式直接下载 上传方式和wget下载不作介绍,其中有些依赖是可以编译安装或者yum安装,并且这里依赖没有写全,这个里面包含必须的,比如cmak gcc 这些都是必须
安装依赖库
yum install -y gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libpng libpng-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses curl openssl-devel gdbm-devel db4-devel libXpm-devel libX11-devel gd-devel gmp-devel readline-devel libxslt-devel expat-devel xmlrpc-c xmlrpc-c-devel cmake
在httpd2.4.x开始 编译安装时候需要先安装apr apr-util 我习惯安装直前对所有包解压
ls *.tar.gz | xargs -n1 tar xvf #这个命令要在压缩包当前文件夹
安装aprcd apr-1.5.2/
./configure --prefix=/usr/local/aprmake && make install
安装apr-util
cd apr-util-1.5.4/
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/make && make install
安装pcrecd pcre-8.39/
./configuremake && maek install
安装apachecd httpd-2.4.25/./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --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-mpms-shared=all --with-mpm=event
这里也有写,这里的参数是根据自己情况所定有些可以不用加 也可以加别的 说明:--prefix=/usr/local/apache ####httpd安装路径
--sysconfdir=/etc/httpd ####系统配置文件目录路径
--enable-so ######支持共享模块功能
--enable-ssl #####支持ssl功能
--enable-cgi ####支持cgi功能
--enable-rewrite ####支持重写功能
--with-zlib #####支持扩展库文件功能
--with-pcre #####支持pcre功能 如果pcre编译安装时候有指定路径 --with-apr=/usr/local/apr ######指定apr安装路径
--with-apr-util=/usr/local/apr-util #####指定apr-util安装路径
--enable-mpms-shared=all #####表示此平台的mpm模块都会被安装
--with-mpm=event #####特指定mpm模块为event,mpm模块可以在配置文件中修改
cp /usr/local/apache/bin/apachectl /etc/init.d/httpd 将apache 添加到开机启动
vi /etc/init.d/httpd
#!/bin/sh下面加入 否则chkconfig --add httpd 会报错# chkconfig:2345 90 17 90 17 是开机 关机加载的顺序# description:这里写什么无所谓下来执行命令把httpd 开机自启
chkconfig --add httpd
chkconfig httpd on
安装成功后 关闭防火墙或者80端口加入iptables ,因为还没配置域名 ,先输入主机地址 进行访问,如出现 it works! 说明apache安装成功,接下来安装mysql php
mysql安装
groupadd mysql 创建组
useradd -g mysql mysql #如果禁止用户登陆系统 可加参数 -s /sbin/nologin
mkdir -p /data/mysqldb #数据库存放目录
mkdir -p /usr/local/mysql #数据库安装目录
cd mysql-5.6.35/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DWITH_MYISAM_STORAGE_ENGINE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_MEMORY_STORAGE_ENGINE=1 \-DWITH_READLINE=1 \-DENABLED_LOCAL_INFILE=1 \-DMYSQL_DATADIR=/data/mysqldb \-DMYSQL_USER=mysql \-DMYSQL_TCP_PORT=3306 \-DENABLE_DOWNLOADS=1make && make install
注:重新配置,删除CMakeCache.txt文件
安装完成后修改数据库安装目录 和数据库文件目录权限
cd /usr/local/mysql/chown -R mysql:mysql .
cd /data/mysqldb/
chown -R mysql:mysql .
初始化MySQL数据库
cd /usr/local/mysql
scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb
复制mysql服务启动配置文件
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
复制mysql服务启动脚本
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
把mysql加入PATH路径
vi /etc/profile
PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
export PATH
source /etc/profile
service mysqld start 启动MySQL
mysql -uroot -p进去MySQL 默认空密码 直接回车
mysqladmin -u root password 'rootroot' 修改MySQL密码
允许MySQL远程登陆
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "rootroot";
mysql> flush privileges;
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl
--with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring--with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib--with-libxml-dir=/usr --enable-xml --enable-sockets--with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt--with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d
--with-bz2 --enable-maintainer-zts这个参数比较全面,里面包含mcrypt,如果不去掉这个参数,需要安装 libmcrypt这些依赖库,如暂时用不上的话 可以去掉这个参数
make
make install
cp php.ini-production /etc/php.ini
vi /etc/httpd/httpd.conf
加入以下两行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
如果不能解析PHP文件在末尾加入PHPIniDir /etc/php.ini 重启apache 就可以正常解析了