CentOS 下编译安装 apache

yum或者rpm安装apache so easy 今天来教大家如何手动编译安装apache 以及开机自启动

1.下载需要的包文件并解压

 wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.39.tar.gz
 wget http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.7.0.tar.gz
 wget http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
 wget https://jaist.dl.sourceforge.net/project/pcre/pcre/8.43/pcre-8.43.tar.gz
 tar -zxvf apr-1.7.0.tar.gz && tar -zxvf apr-util-1.6.1.tar.gz && tar -zxvf httpd-2.4.39.tar.gz && tar -zxvf pcre-8.43.tar.gz

2.安装apr包

cd apr-1.7.0
./configure --prefix=/usr/local/apr

这个过程会报错:

PHP
如何解决呢?
编辑/usr/local/src/apr-1.7.0这个安装包里面的configure文件
注释掉31880行这句话即可!
PHP
然后执行命令:

make && make install

不报错即成功!

3.安装apr-util-1.6.1包

cd /usr/local/src/apr-util-1.6.1
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
make && make install

会报错:

PHP

解决方式如下:

yum install expat-devel

然后重新执行

make && make install

不报错即成功!

4.安装pcre-8.43

cd ../pcre-8.43
./configure --prefix=/usr/local/pcre --with-apr=/usr/local/apr/bin/apr-1-config
make && make install

会报两个warning警告 无视它即可!

5.安装httpd-2.4.39

cd ../httpd-2.4.39
./configure --prefix=/usr/local/httpd --with-pcre=/usr/local/pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make && make install

无报错即成功!
到此安装完成!
6.修改监听的端口号:

为了防止和Nginx冲突 抢占80端口的风险发生 我们将Apache的默认端口号改为8080 我是把Nginx和Apache安装到了同一台机器上才这么做的哈

 vim /usr/local/httpd/conf/httpd.conf

如图所示:
CentOS 下编译安装 apache

此处还需要修改权限 可以外部访问apache的其他站点!

CentOS 下编译安装 apache

还需要允许将站点目录指向其他目录下的权限 AllowOverride后边改成all,
表示虚拟主机的目录允许覆盖掉配置里面的默认路径usr/local/httpd/htdocs

CentOS 下编译安装 apache

7.启动Apache

cd /usr/local/httpd/bin
./apachectl start    

会报错:

CentOS 下编译安装 apache

意思是说不能确认服务器完全确认域名
解决方式:
vim /usr/local/httpd/conf/httpd.conf
CentOS 下编译安装 apache

8.将链接apachectl 复制到系统启动目录下并命名为httpd

 cp /usr/local/httpd/bin/apachectl /etc/rc.d/init.d/httpd

到此,其实已经可以使用service httpd start等命令,但在linux服务列表还没有注册,还不能使用systemctl 命令启动httpd, 我们打开刚刚复制的那个文件

 vim /etc/rc.d/init.d/httpd

//在第二行和第三行添加如下:
CentOS 下编译安装 apache
将httpd配置开机自启动并加入linux服务监控

chkconfig --add httpd

至此,apache安装完毕,可以使用 systemctl restart httpd 重启apache试一试

访问ip:8080出现it works 即成功啦!
CentOS 下编译安装 apache

9.配置虚拟主机

vim /usr/local/httpd/conf/httpd.conf

打开这样的注释 我们统一将虚拟主机配置到 conf/extra/httpd-vhosts.conf文件里面去
CentOS 下编译安装 apache

注意:如果你修改了apache默认的监听端口为8080或者其他 那么虚拟主机配置里面也要跟着变化!注意:如果你修改了apache默认的监听端口为8080或者其他 那么虚拟主机配置里面也要跟着变化!

红色框内是最重要的 还有日志配置好就完事 重启访问!
CentOS 下编译安装 apache

10.支持解析php

这个你得去编译php7.2 把它编译成为apache的一个模块 看我的这篇博客吧:博客:CentOS 下编译安装 apache
然后你还需要做的是httpd.conf文件当中做配置的修改工作,如下图所示:

CentOS 下编译安装 apache

本作品采用《CC 协议》,转载必须注明作者和本文链接
胡军
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!