设为首页 收藏本站
查看: 1316|回复: 0

[经验分享] apache编译问题汇总

[复制链接]

尚未签到

发表于 2018-11-21 11:20:49 | 显示全部楼层 |阅读模式
  1、安装httpd-2.2.27./configure 的时候报错如下
  checking for void pointerlength... yes configure: error: Size of "void *" is less than size of"long"
  

  解决方法vi configure
  if test"$ap_cv_void_ptr_lt_long"  ="yes"; then
       as_fn_error $? "Size of \"void*\" is less than size of \"long\"" "$LINENO" 5
  改为if test"$ap_cv_void_ptr_lt_long" != "yes"; then
       as_fn_error $? "Size of \"void*\" is less than size of \"long\"" "$LINENO" 5
  保存重新编译
  
  
2、linux下安装安装pcre-8.32
./configure --prefix=/usr/local/pcre 出现以下错误
configure: error: You need a C++ compiler for C++ support

  正解


yum install -y gcc gcc-c++
  
  3、如果在安装apache的时候入到 error: mod_deflate has beenrequested but can not be built due to prerequisite failures的错误,那是没有安装zlib包。centos下可以采用yum install zlib-devel, ubuntu下可以采用apt-get install zlib1g-dev.
  
4、在编译apache的过程中出现如下错误:
no SSL-C headers found
configure: error: ...No recognized SSL/TLS toolkit detected

解决办法:
安装openssl-devel
  
  
5、安装apache报错
代码如下:
rotatelogs.o: In function post_rotate':
rotatelogs.c:(.text+0x5ed): undefined reference to apr_file_link'
collect2: ld returned 1 exit status
make[2]: *** [rotatelogs] Error 1
make[2]: Leaving directory /root/src/httpd-2.4.2/support'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory /root/src/httpd-2.4.2/support'
make: *** [all-recursive] Error 1

这些是因为没apr的包
有2个解决方法:
第一种解决办法:
.代码如下:
yum remove “apr*”
wget http://ftp.jaist.ac.jp/pub/apache/apr/apr-1.4.6.tar.gz
tar xzf apr-1.4.6.tar.gz
cd apr-1.4.6
./configure ; make ; make install
wget http://ftp.jaist.ac.jp/pub/apache/apr/apr-util-1.4.1.tar.gz
tar zxvf apr-util-1.4.1.tar.gz
cd apr-util-1.4.1
./configure –with-apr=/usr/local/apr
yum install -y pcre-devel lua-devel libxml2-devel

  
第二种解决办法:
下载arp的包以后 cp到httpd的文件夹

.代码如下:
cp -r apr-1.4.6 httpd-2.4.2/srclib/apr
cp -r apr-util-1.4.1 httpd-2.4.2/srclib/apr-util

就可以解决了
第二个常见的错误这种只有mini安装会出现 一般大部分菜鸟都不会安装devel的包
.代码如下:
checking for OpenSSL version >= 0.9.7… FAILED
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

解决办法
.代码如下:
yum install openssl-devel
yum update openssl

  
  6、CENTOSapache启动时httpd:apr_sockaddr_info_get()failedfor报错
今天安装Apache httpd web服务器时,从官方网站上下载httpd,然后在centos下解压,安装过程分为三部分:
     1./configure
     2make
     3make install (需要root权限)
默认安装在/usr/sbin/下,执行apachectl start时候,提示如下错误:
httpd: apr_sockaddr_info_get() failed for shiwei
httpd: Could not reliably determine the server's fully qualified domain name,using 127.0.0.1 for ServerName

DSC0000.jpg
于是上网查了一下,根据前人的经验,问题终于解决了。总结一下,方便以后使用。
原因:这个问题应该是没有在 /etc/httpd/conf/httpd.conf 中设定 ServerName。所以apache会用主机上的名称来取代,首先会去找 /etc/hosts 中有没有主机的定义。
解决办法:
1)可以设定httpd.conf文件中的 ServerName,如下:ServerName localhost:80                       
2)在 /etc/hosts 中填入自己的主机名称 bogon,如下:127.0.0.1 shiwei (用户名称)
  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-637723-1-1.html 上篇帖子: 基于apache双向ssl虚拟主机服务配置 下篇帖子: bash
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表