【问题记录】 Linux 安装 apache 遇到的一些问题
以下为linux上安装apache时自己遇到的一些问题,记录在这,以后遇到时也会不定时更新...
一.安装Apache提示APR not found的解决办法
解决方法:
1. 网站 http://apr.apache.org/download.cgi 下载 apr-1.5.1.tar.gz 、apr-util-1.5.4.tar.gz
2. 网站 http://www.pcre.org/ 下载 pcre-8.36.tar.gz
3.依次解压、安装
附相关命令:
[root@test ~]# tar -zxvf xxx.tar.gz
[root@test ~]# ./configure --prefix=path //path为安装路径
[root@test ~]# make
[root@test ~]# make install
4. apache 设置指定库位置
[root@test ~]# ./configure --prefix=/usr/local/httpd-2.4.10 --with-apr=apr-path --with-apr-util=aprutil-path --with-pcre=pcre-path --enable-so //把path修改成各自的安装路径即可
5. make && make install
二、/xxx/httpd-2.4.x/support/ab.c:2273: undefined reference to `TLSv1_2_client_method'、/xxx/httpd-2.4.x/support/ab.c:2271: undefined reference to `TLSv1_1_client_method'
错误日志:
...
ab.o: In function `main':
/xxx/httpd-2.4.x/support/ab.c:2273: undefined reference to `TLSv1_2_client_method'
/xxx/httpd-2.4.x/support/ab.c:2271: undefined reference to `TLSv1_1_client_method'
collect2: ld returned 1 exit status
make[2]: *** [ab] Error 1
make[2]: Leaving directory `/xxx/httpd-2.4.x/support'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/xxx/httpd-2.4.x/support'
make: *** [all-recursive] Error 1
解决方法:
open-ssl 库有问题, 安装时需要加上
1 [root@test ~]# ./config -fPIC --prefix=path enable-shared
2 [root@test ~]# ./config -t
3 [root@test ~]# make depend
4 [root@test ~]# make
5 [root@test ~]# make test
6 [root@test ~]# make install
然后安装apache时指定
[root@test ~]# ./configure --prefix=/usr/local/httpd-2.4.10 --with-ssl=openssl-path --enable-so
三、relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
错误日志:
make[4]: Entering directory `/home/zfh/httpd-2.2.9/modules/filters'
/home/user/httpd-2.2.9/srclib/apr/libtool --silent --mode=link gcc -g -O2 -pthread -L/usr/local/zlib//lib -o mod_deflate.la -rpath /usr/local/apache2/modules -module -avoid-version mod_deflate.lo -lz
/usr/bin/ld: /usr/local/zlib//lib/libz.a(crc32.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
/usr/local/zlib//lib/libz.a: could not read symbols: Bad value //注意这行
collect2: ld returned 1 exit status
make[4]: *** [mod_deflate.la] Error 1
make[4]: Leaving directory `/home/zfh/httpd-2.2.9/modules/filters'
make[3]: *** [shared-build-recursive] Error 1
make[3]: Leaving directory `/home/zfh/httpd-2.2.9/modules/filters'
make[2]: *** [shared-build-recursive] Error 1
make[2]: Leaving directory `/home/zfh/httpd-2.2.9/modules'
make[1]: *** [shared-build-recursive] Error 1
make[1]: Leaving directory `/home/zfh/httpd-2.2.9'
make: *** [all-recursive] Error 1
[root@localhost httpd-2.2.9]#
错误为zlib库有问题,错误中有提示 recompile with -fPIC 即加上 -fPIC进行编译。
解决方法:
1. 找到zlib的源码安装包,或者直接下载一个 。地址:http://www.zlib.net/
2. 执行以下相关命令
[root@test ~]# tar -zxvf zlib-1.2.3.tar.gz
[root@test ~]# cd zlib-1.2.3
[root@test ~]# ./configure --prefix=path //path为自定义安装路径
[root@test ~]# vi Makefile
[root@test ~]# 找到 CFLAGS=-O3 -DUSE_MMAP
[root@test ~]# 在后面加入-fPIC,即变成CFLAGS=-O3 -DUSE_MMAP -fPIC
[root@test ~]# make && make install
3. 安装apache,添加 --with-zlib-1.2.3=zlib-path 参数
1 [root@test ~]# ./configure --prefix=/usr/local/httpd-2.4.10 --with-zlib-1.2.3=zlib-path --enable-so //把path修改成各自的安装路径即可
未完待续...
【问题记录】 Linux 安装 apache 遇到的一些问题的更多相关文章
- linux安装apache
我的linux是用阿里云上的,版本是CentOS 6.5 apache依赖于apr.apr-util和pcre,所以需要先安装这三个 apr(包含apr.apr-util和apr-iconv)是apa ...
- linux安装apache的纠结过程
本以为linux下安装apache是件很简单的过程.三命令就可以搞定,jxvf解压,make 编译,make install 安装就OK了.没想到这个过程还颇费周折.可能和环境有关吧.先说一下我的环境 ...
- linux 安装 apache
1. 系统基本信息 CentOS 6.4 内存2G 硬盘 200G cpu 4核 (cat /proc/cpuinfo |grep 'processor'|wc -l 查看cpu核数 ...
- linux安装apache软件的过程
参考官方安装指导:http://httpd.apache.org/docs/2.4/install.html 1.下载依赖包 apr/apr-util/pcre 2.解压依赖包 3.安装apr 进入安 ...
- Linux安装Apache报错:Cannot find a valid baseurl for repo: base/7/x86_64解决方案
最近使用CentOS7学习,安装安装Apache时候,使用yum安装Apache报错:本文适合CentOS7和RHEL7 # yum install httpd 出现:cannot find a va ...
- LInux——安装Apache
在安装Apache的httpd的时候经常会遇到: configure: error: APR not found . Please read the documentation. configure ...
- Linux安装apache服务
1.通过yum包下载安装httpd yum -y install httpd*(等待安装) 到下面就安装完毕 2.启动apache服务 service httpd restart 3.现在就可以查看a ...
- linux 安装Apache服务器
这篇文章先别看,,有些地方我不是很明白,写错了一些地方,正在咨询会linux的大神 安装好Apache就可以用Http访问或者下载电脑的文件了 我还是用 连接我的linux电脑 咱把Apache安装到 ...
- Linux安装Apache常见报错(二)
配置Apache提示报错configure error: APR could not be located. Please use the --with-apr option. 解决办法: ./con ...
随机推荐
- Ubuntu的Unable to locate package无法更新源问题解决方案
https://blog.csdn.net/long19910605/article/details/47017889/ 问题: 更新源时提示不能联网(does the network require ...
- Visual Studio 2013 新增功能:“Browser Link”
今天新装了 Visual Studio 2013, 使用 VS2013 打开一个现有的 WEB 网站, 在调试网站的时候出现在了脚本错误,一个文件名叫 "browserLink", ...
- C#ADO.NET基础一
简介 使用SQLite进行讲解 1.基础类: SQLiteConnection 连接数据库 SQLiteCommand 执行命令(增,删,改,查),或存储过程 SQLiteDataReader 读取查 ...
- [.net 多线程]SpinWait
<CLR via C#>读书笔记-线程同步(四) 混合线程同步构造简介 之前有用户模式构造和内核模式构造,前者快速,但耗费CPU:后者可以阻塞线程,但耗时.耗资源.因此.NET会有一些混合 ...
- angular 输入属性
import { Component, OnInit, Input } from '@angular/core'; @Component({ selector: 'app-order', templa ...
- 认识学习MVC这家伙
通过最近的学习认识,只能感慨这玩意太强大了! 以前看了一些MVC的入门教程,看入门教程我感觉不能去体会它的强大,可以看看它的扩展点,通过扩展点去真正的试着了解它,体会它的强大. 它的验证.模型绑定提供 ...
- 【leetcode 94. 二叉树的中序遍历】解题报告
前往二叉树的:前序,中序,后序 遍历算法 方法一:递归 vector<int> res; vector<int> inorderTraversal(TreeNode* root ...
- React基础篇(2) -- state&props&refs
内容简介 state props refs 行内样式及动态类名 state 基本介绍 React 把组件看成是一个状态机(State Machines).通过与用户的交互,实现不同状态,然后渲染 UI ...
- Windows系统如何安装Redis?
转自 http://blog.csdn.net/lamp_yang_3533/article/details/52024744 一.Redis的下载地址 Redis官方并没有提供Redis的win ...
- django中如何建立抽象型数据库作为父模块可继承其功能
先建立抽象数据库 from django.db import models class BaseModel(models.Model): """为模型类补充字段" ...