一、关闭防火墙、关闭SElinux1、关闭firewall:
#停止firewall服务
[root@www.erdangjia.com ~]# systemctl stop firewalld.service
#禁止firewall开机启动
[root@www.erdangjia.com ~]# systemctl disable firewalld.service
2、关闭Selinux
#修改配置文件
[root@www.erdangjia.com ~]# vi /etc/selinux/config
[root@www.erdangjia.com ~]# #SELINUX=enforcing #注释掉
[root@www.erdangjia.com ~]# #SELINUXTYPE=targeted #注释掉
[root@www.erdangjia.com ~]# SELINUX=disabled #增加
[root@www.erdangjia.com ~]# :wq! #保存退出
#使配置立即生效
[root@www.erdangjia.com ~]# setenforce 0
[root@www.erdangjia.com ~]# yum install glibc-headers
[root@www.erdangjia.com ~]# yum install gcc-c++ //这个最好版本高于6.3,安装数据Mysql8有要求
二、安装Apache(前要先安装几个小软件libxml2 )
1、安装libxml2最新库文件
[root@www.erdangjia.com ~]# ./configure --prefix=/usr/local/libxml2
[root@www.erdangjia.com ~]# make & make install
2、安装libmcrypt最新库文件
[root@www.erdangjia.com ~]#./configure --prefix=/usr/local/libmcrypt/
[root@www.erdangjia.com ~]# make
[root@www.erdangjia.com ~]# make install
注:报错 make[1]: Entering directory `/lamp/libmcrypt-2.5.8' make: *** [all] Error 2
解决:出现该情况是由于c++编译器的相关package没有安装,以root用户登陆 # yum install glibc-headers # yum install gcc-c++ //这个最好在安装软件之前就先安装好
3、安装zlib最新库文件
[root@www.erdangjia.com ~]#./configure --prefix=/usr/local/zlib //最好不要指定路径
[root@www.erdangjia.com ~]#make
[root@www.erdangjia.com ~]#make install
4、安装libpng最新库文件
[root@www.erdangjia.com ~]#./configure --prefix=/usr/local/libpng
[root@www.erdangjia.com ~]#make
[root@www.erdangjia.com ~]#make install
报错:configure: error: zlib not installed 解决:就是因为上一个zlib库指定了路径
5、安装jpeg最新库文件 [root@www.erdangjia.com ~]#mkdir /usr/local/jpeg
//建立jpeg8软件安装目录 [root@www.erdangjia.com ~]#mkdir /usr/local/jpeg/bin
//建立存放命令的目录 [root@www.erdangjia.com ~]#mkdir /usr/local/jpeg/lib
//创建jpeg8库文件所在目录 [root@www.erdangjia.com ~]#mkdir /usr/local/jpeg/include
//建立存放头文件目录 [root@www.erdangjia.com ~]#mkdir -p /usr/local/jpeg/man/man1
//建立存放手册的目录
[root@www.erdangjia.com ~]#./configure \
> --prefix=/usr/local/jpeg/ \
> --enable-shared \ //建立共享库使用的GNU的libtool
> --enable-static //建立静态库使用的GNU的libtool
[root@www.erdangjia.com ~]#make && make install
6、安装freetype最新库文件
[root@www.erdangjia.com ~]#./configure --prefix=/usr/local/freetype
[root@www.erdangjia.com ~]#make
[root@www.erdangjia.com ~]#make install
7、安装autoconf最新库文件
[root@www.erdangjia.com ~]#./configure
[root@www.erdangjia.com ~]#make
[root@www.erdangjia.com ~]#make install
报错:make[2]: *** [autoconf.in] Error 2 解决: 直接先用yum安装 yum install -y autoconf 然后make clean 重新再安装
8、安装GD最新库文件
[root@www.erdangjia.com ~]#./configure \ //配置命令
> --prefix=/usr/local/gd2/ \ //指定软件安装的位置
> --with-zlib \ //指定到哪去找zlib库文件的位置 ,前面没有指定这里就不要指定
> --with-jpeg=/usr/local/jpeg/ \ //指定到哪去找jpeg库文件的位置
> --with-png=/usr/local/libpng/ \ //指定到哪去找png库文件的位置
> --with-freetype=/usr/local/freetype/ //指定到哪去找freetype 2.x字
报错:make[2]: *** [gd_png.lo] Error 1 gd_png.c:16:53: fatal error: 解决:在编译文件里vi gd_png.c 找到 “#include <png.h>” 改成加上路径 “/usr/local/libpng/include/png.h”
9.如果安装的是2.2以上版本还需要apr和apr-util小插件和其它小问题,如下图:
三、正式开始安装
1、准备工作好了以后,接下来就是正常源码包安装就可以了
1、安装之前要先安装必须先安装zlib 和zlib-devel (yum install zlib; yum install zlib-devel)
make[2]: *** [libaprutil-1.la] Error 1 解决:重新编译,make clean 就可以了
[root@www.erdangjia.com ~]# cd httpd-2.4.38
[root@www.erdangjia.com ~]# ./configure \ //执行当前目录下软件自代的配置命令
--prefix=/usr/local/apache2 \ //指定Apache软件安装的位置
--sysconfdir=/etc/httpd \ //指定Apache服务器的配置文件存放位置
--with-z=/usr/local/zlib/ \ //指定zlib库的位置(如果不是手动安装,尽量不要指定)
--with-included-apr \ //使用捆绑APR/APR-Util的副本
--enable-so \ //以动态共享对象(DSO)编译
--enable-ssl \ //HTTPS 证书需要
--enable-deflate=shared \ //缩小传输编码的支持
--enable-expires=shared \ //期满头控制
--enable-rewrite=shared \ //基于规则的URL操控
--enable-static-support //建立一个静态链接版本的支持
3、make && make install;
4、/usr/local/apache2/bin/apachectl start //开启HTTPD服务器 同理 stop restart
2、安装Apache之虚拟主机
vi /etc/httpd/httpd.conf 在最后面添加如下代码:
<VirtualHost *:80>
<Directory "/var/www/html/pure/">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ServerAdmin 826096331@qq.com
DocumentRoot "/var/www/html/pure/"
ServerName www.erdangjiade.com
ErrorLog "logs/erdanjiade_error_log"
CustomLog "logs/erdangjiade_access_log"
DirectoryIndex index.php index.html
</VirtualHost>
2、配制好了之后还要开启mod_rewrite
找到conf/httpd.conf 中搜索如下一段代码:LoadModule Rewrite_module modules/mod_Rewrite.so去掉该代码的最前面的#注释搜索AllowOverride None 替换为 AllowOverride All