centos下LAMP之源码编译安装httpd
1 最好先安装组件
[root@localhost ~]# yum groupinstall additional development [root@localhost ~]# yum groupinstall development tool
2 安装ap1.5.2r(Apache Portable Runtime),安装apr-util 1.5.4工具
[root@localhost ~]wget http://mirrors.cnnic.cn/apache//apr/apr-1.5.2.tar.gz [root@localhost ~]# tar xzvf apr-1.5.2.tar.gz [root@localhost apr-1.5.2]# ./configure --prefix=/usr/local/apr/
如果报错:rm: cannot remove `libtoolT': No such file or directory,请编辑configure这个文件,将 $RM "$cfgfile" 那行注释掉
[root@localhost apr-1.5.2]#make&&make install
安装apr-util工具
[root@ns2 ~]wget http://mirrors.cnnic.cn/apache//apr/apr-util-1.5.4.tar.gz
编译选项注意有 --apr选项
[root@localhost ~]# tar xf apr-util-1.5.4.tar.gz [root@localhost ~]# cd apr-util-1.5.4 [root@localhost apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/ [root@localhost apr-util-1.5.4]#make&&make install
3 centos默认安装了pcre,所以不需要安装pcre,否则请安装pcre-devel哦
4 安装httpd 2.4.12(2015-6-6新)
[root@localhost ~]# tar xf httpd-2.4.12.tar.bz2 [root@localhost ~]# cd httpd-2.4.12
打算编译选项加上(注意不明确的请查看./configure -h不要瞎写,写完和自己的对照一下,是否有问题)
基本选项,包括安装路径,配置文件路径
--prefix=/usr/local/apache指定安装的大路径
--sysconfdir=/etc/httpd指定配置文件的路径
模块允许选项,允许模块使用,大部分动态允许mpm等
--enable-so允许模块化使用
--enable-modules=most添加大多数的模块
--enable-mods-shared=most
--enable-mpms-shared=all支持所有的mpm模型
--enable-cgi --enable-cgid支持cgi程序
--enable-ssl支持ssl从而支持https
--enable-rewrite支持url重定向
指定和apr,apr-util的联系与绑定
--with-include-apr
--with-apr=/usr/local/apr指定apr
--with-apr-util=/usr/local/apr-util指定apr-util
[root@localhost httpd-2.4.12]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-modules=most --enable-mods-shared=most --enable-mpms-shared=all --enable-cgi --enable-cgid --enable-ssl --enable-rewrite --with-include-apr --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util [root@localhost httpd-2.4.12]#make&&make install
如果报错
configure: WARNING: OpenSSL version is too old
no
checking whether to enable mod_ssl... configure: error: mod_ssl has been requested but can not be built due to prerequisite failures
安装openssl-devel即可
编译安装完
进入安装后的目录
[root@localhost bin]# cd /usr/local/apache [root@localhost apache]# ls bin build cgi-bin error htdocs icons include logs man manual modules [root@localhost apache]# cd bin/ [root@localhost bin]# ./apachectl
然后打开网页试试,输入你的虚拟机ip即可
如果不能打开,考虑如下
[root@localhost bin]# service iptables stop [root@localhost bin]# getenforce Enforcing [root@localhost bin]# setenforce 0 [root@localhost bin]# vim /etc/selinux/config
改为permissive
修改文件夹属性
[root@localhost bin]#chmod 755 /usr/local/apache/
再刷新试试
上述的好了,网页出现it works!后
我们可以把命令复制到/etc/init.d/httpd实现service调用,总之,一切为了实现之前使用httpd rpm包的那个习惯,嘿嘿
[root@localhost bin]# cp /root/httpd-2.4.12/build/rpm/httpd.init /etc/init.d/httpd [root@localhost bin]# chmod +x /etc/init.d/httpd
修改文件
建议三处
httpd=${HTTPD-/usr/local/apache/bin/httpd}
pidfile=${PIDFILE-/var/run/httpd/${prog}.pid}
CONFFILE=/etc/httpd/httpd.conf
别急着启用服务
创建相应的目录
[root@localhost bin]# mkdir /var/run/httpd/
为了使用httpd -t等命令,修改~/.bash_profile
修改为PATH=$PATH:$HOME/bin:/usr/local/apache/bin
[root@localhost bin]# vim ~/.bash_profile [root@localhost bin]# source ~/.bash_profile [root@localhost bin]# httpd -t Syntax OK
在/etc/httpd/httpd.conf加上这行
PidFile "/var/run/httpd/httpd.pid"
为log文件创建符合链接
[root@localhost bin]# ln -s /usr/local/apache/logs/* /var/log/httpd/
然后重启服务看是否ok
如果不行请查看日志文件等
[root@localhost bin]# service httpd restart Stopping httpd: [ OK ] Starting httpd: [ OK ]
如果不能重启,比如这个错误
Stopping httpd: [FAILED]
Starting httpd: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
[FAILED]
[root@testA bin]# service httpd stop
Stopping httpd: [FAILED]
这时候去找httpd.pid文件即可
把/usr/local/apache/logs/httpd.pid 移到/var/run/httpd/下即可
然后再次查看网页是否正常,最终搭建最新httpd2.4.12的任务已经完成!
转载于:https://blog.51cto.com/qixue/1659167
centos下LAMP之源码编译安装httpd相关推荐
- 源码编译安装httpd服务
1 概述 很多软件没有发布rpm包,而是直接发布了源码,好处是这样能兼容更多的平台,但是,用户需要对源码进行编译后安装.利用工具make将源码生成二进制文件. 本文主要讲解了对httpd进行编译安装. ...
- centos 7.1 apache 源码编译安装
Apache编译安装 一,需要软件: http://mirrors.cnnic.cn/apache//apr/apr-1.5.2.tar.gz 1.apr-1.5.2.tar.gz http://mi ...
- 源码编译安装httpd及其常见错误
一.编译安装的整体步骤 1.在官网下载源码,并解压 2.切换到其目录中 3.执行./configure 4.编译 二.编译中及安装后配置常见的参数及其说明 编译中配置 1)指定安装路径 --prefi ...
- centos lnmp源码安装mysql_CentOS 6.6 下源码编译安装MySQL 5.7.5
说明:CentOS 6.6 下源码编译安装MySQL 5.7.5 1. 安装相关工具 # yum -y install gcc-c++ ncurses-devel cmake make perl \ ...
- linux git编译安装目录,Linux(centos) 环境下如何源码编译安装git
21运维原创,转载请注明出处. 最近线上要使用git进行代码发布和版本管理了,之前搞过,一直没有做记录.从今儿起开始记录这块. linux上(当前文章使用的是centos,ubuntu采用apt-ge ...
- centos 7 下 rabbitmq 3.8.0 erlang 22.1 源码编译安装
安装前请检查好erlang和rabbitmq版本是否相匹配,参考:RabbitMQ Erlang Version Requirements 1. erlang 22.1 源码编译安装 1.1 安装Er ...
- CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境
什么是LNMP? LNMP(别名LEMP)是指由Linux, Nginx, MySQL/MariaDB, PHP/Perl/Python组合成的动态Web应用程序和服务器,它是一组Web应用程序的基础 ...
- 详解LAMP源码编译安装
实战:LAMP源码编译安装 家住海边喜欢浪:zhang789.blog.51cto.com 目录 详解LAMP源码编译安装 LAMP简介 一.准备工作 二.编译安装 Apache 三.编译安装 MyS ...
- mysql5.1编译安装centos7_CentOS7下 Nginx1.13.5 + PHP7.1.10 + MySQL5.7.19 源码编译安装
在CentOS7下 Nginx1.13.5 + PHP7.1.10 + MySQL5.7.19 源码编译安装过程记录. 一.安装Nginx 1.安装依赖扩展 # yum -y install wget ...
最新文章
- roaringbitmap java,BitMap、RoaringBitmap与JavaEWAH
- activity 启动模式_Android世界:Activity的启动模式及其适用范围
- 使用 GraalVM 将基本的 Java 项目打包成 EXE
- 双城生活,一种相对无奈且幸福的选择
- js中动态引入css样式文件
- php lpop 返回null,数据库读取数据返回 null 怎么办?
- JavaBean 与 EJB 的区别
- 使用 Xilinx Documentation Navigator 查看官方文档
- Python 学习随笔
- DMTF云计算开放管理标准内容
- Differential Privacy差分隐私
- cpc客户端网络不通
- 软件工程-什么是热重载,如何使用热重载?
- 如何旋转PDF的页面方向?教你2种方法
- 在标准IO库中,rewind函数作用?
- 数字源表LIV测试激光器方案
- VMware Workstation 15 pro 安装macOS 10.13,macOS 10.14教程(仅供个人兴趣学习使用)
- 10.MySQL文件
- 第九届蓝桥杯单片机省赛题目解析
- java if(true)_使用 if(true) 和 if(false)
热门文章
- ucontext实现的用户级多线程框架3(实现echo服务器)
- 2010年9月blog汇总:敏捷个人和模型驱动开发
- 用Inno Setup来解决.NetFramework安装问题
- “此文件来自其他计算机,可能被阻止以帮助保护该计算机” 教你win7解除阻止程序运行怎么操作...
- 2015化妆品行业如何进行微信公众号营销
- linux设备驱动第五篇:驱动中的并发与竟态
- linux+postfix+extmail+dovecot搭建邮件服务器
- web网站加速之CDN(Content Delivery Network)技术原理
- 2021年中国工业互联网安全大赛核能行业赛道writeup之隐写
- php webuploader大文件,web uploader 上传大文件总结