这是我第一次尝试在我的盒子中本地安装Apache HTTP服务器作为普通用户(非root用户)。
我已经下载了Apache 2.4.1版本的Apache HTTP服务器[http://httpd.apache.org/download.cgi]。但是,当我尝试在我的框中本地构建和安装时,我收到以下错误:
httpd/httpd-2.4.1 1059> ./configure
checking for chosen layout... Apache
checking for working mkdir -p... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
Configuring Apache Portable Runtime library ...
checking for APR... no
configure: error: APR not found. Please read the documentation.
我不确定它正在寻找什么依赖 - 我的意思是下载包不包含它?我需要做什么来构建/部署Apache HTTP服务器?
提前致谢。
答案 0 :(得分:125)
当它告诉你Please read documentation
时,它意味着你应该阅读Apache文档(http://httpd.apache.org/docs/2.4/install.html),它告诉你
从Apache APR下载最新版本的APR和APR-Util, 将它们解压缩到./srclib/apr和./srclib/apr-util(确保 域名没有版本号;例如,APR 分发必须在./srclib/apr /)
之下
然后做
./configure --with-included-apr
答案 1 :(得分:36)
对于Ubuntu 11.10,这个选项似乎运行良好:
# APR
wget http://mirrors.axint.net/apache//apr/apr-1.4.6.tar.gz
tar -xvzf apr-1.4.6.tar.gz
cd apr-1.4.6/
./configure
make
make install
cd ..
# APR Utils
wget http://mirrors.axint.net/apache//apr/apr-util-1.4.1.tar.gz
tar -xvzf apr-util-1.4.1.tar.gz
cd apr-util-1.4.1
./configure --with-apr=/usr/local/apr
make
make install
cd ..
# Apache
wget http://apache.petsads.us//httpd/httpd-2.4.1.tar.gz
tar -xvzf httpd-2.4.1.tar.gz
cd httpd-2.4.1
./configure --enable-file-cache --enable-cache --enable-disk-cache --enable-mem-cache --enable-deflate --enable-expires --enable-headers --enable-usertrack --enable-ssl --enable-cgi --enable-vhost-alias --enable-rewrite --enable-so --with-apr=/usr/local/apr/
make
make install
cd ..
您可以在下面找到更多相关信息
答案 2 :(得分:23)
如果您有Debian / Ubuntu,您可以:
apt-get install libapr1-dev libaprutil1-dev
然后./configure
完成
答案 3 :(得分:20)
以下是我在非root用户上安装apache-httpd的步骤:
重要:不要忘记将默认端口从80更改为其他内容,例如8080,这对非root来说尤为重要 用户。 (如何?打开httpd.conf - >搜索“Listen 80” - >更改它 “听8080”。
就是这样,现在打开浏览器输入“localhost: 8080 ”,它应显示“它有效!”。
答案 4 :(得分:3)
如果您使用的是fedora,则可以使用 yum 来安装 APR,APR-Util和PCRE 。您还需要下载apr-devel,apr-util-devel和pcre-devel。
话虽这么说,你可以在终端上运行以下命令,不再“ configure:error:APR not found .. ..APR-Util和PCRE ”错误。
yum -y install arp apr-devel apr-util apr-util-devel pcre pcre-devel
我正在使用fedora 17并计划使用shell脚本来设置apache 2.4.3。所以 yum 非常灵活,而不是手动下载apr,apr-util和pcre。
答案 5 :(得分:1)
1,您需要APR(apache可移植运行时),它是apache Web服务器的核心组件
2,如果您想进行make install,则可能需要root帐户
3,即使没有,apache也无法在没有root帐户的情况下开始侦听非特权端口(低于1024)
4,获取root权限或者请root用户从官方repo安装apache(我不知道你运行的是哪个发行版)就像使用yum,apt-get等...
答案 6 :(得分:0)
Apr或pcre相关错误需要下载源代码并且Apache HTTPD" configure"需要使进程知道文件系统上的这些源位置。例如:如果您在./srclib下载了APR的源代码(相对于apache httpd),那么您将使用
--with-包括-APR
作为配置选项。
另一方面,如果您不想构建但安装APR / APR-UTIL,则需要在CentOS / RedHat上进行以下操作:
yum install apr-util-devel apr-devel
但是,由yum提供的APR版本与此版本的Apache httpd所期望的版本不匹配可能会发生这种情况。在这种情况下,您可以下载APR和APR-UTIL并使用--with-included-apr选项。
您还可以使用相同的" configure,make,make install"来构建PCRE。进程然后继续你离开建立Apache httpd的地方 或者你可以安装pcre: yum install pcre-devel
如果在构建PCRE时:您看到"编译:无法识别的选项"那么也许您还需要其他依赖项:请参阅详细信息:
http://khanna111.com/wordPressBlog/2012/09/11/94087-2/
它还涵盖了" mod_deflate"和" zlib"同样。
答案 7 :(得分:0)
基本步骤
tar -xvf httpd-2.4.1-customized.tar -C ../
#Balancer folder will be created
tar -xvzf openssl-1.0.1.tar.gz -C /balancer/
cd ->/balancer/openssl-1.0.1
./config --prefix=/usr/local/ssl/ shared zlib-dynamic enable-camellia
make depend
make
make install
tar -xvzf pcre-8.30.tar.gz -C ../balancer/
/balancer/pcre-8.30
./configure --prefix=/usr/local/pcre/
make
make install
删除pcre和openssl
答案 8 :(得分:0)
在Ubuntu计算机上安装和编译Apache服务器
步骤1:安装Java JDK
sudo apt install openjdk-11-jdk
sudo gedit /etc/environment
JAVA_HOME="/usr/lib/jvm/openjdk-11"
source /etc/environment
echo $JAVA_HOME
验证Java版本
javac --version
****安装其他必需的软件包:**
sudo apt-get install apache2-dev -y
sudo apt-get install libpcre3 libpcre3-dev
第2步:安装Apache HTTP Server
#1对于ubuntu,请安装包括C编译器在内的开发工具:
sudo apt-get install build-essential checkinstall
#2下载并提取所需文件
假设所有文件都已下载到〜/ Downloads目录
从Apache下载页面(https://httpd.apache.org/download.cgi)下载Apache HTTP Server httpd-2.4.41.tar.gz
以及以下用于编译apache HTTP服务器的必需库:
****阅读要求部分(http://httpd.apache.org/docs/2.4/install.html)***
#3提取tar文件
解压缩后,您应该在〜/ Downloads中看到以下目录列表
#4为apache HTTP Server创建目录
*确保授予该目录所有权限,以便在编译文件时可以读取/写入
sudo mkdir /home{your username here}/apache
将所有权限授予apache目录:
sudo chmod -R 777 /home{your username here}/apache
#5将arp和arp-util目录复制到〜/ Downloads / httpd-2.4.41 / srclib /
cd ~/Downloads
mv apr-util-1.6.1 ~/Downloads/httpd-2.4.41/srclib/apr-util
mv apr-1.7.0 ~/Downloads/httpd-2.4.41/srclib/apr
#6配置要编译的源。 --prefix选项可用于将Web服务器安装在可以写入文件的位置。
cd ~/Downloads/httpd-2.4.41/
./configure --prefix=/home/{username here}/apache --with-pcre=~/Downloads/pcre2-10.34
注意: 如果您在执行上述命令时遇到问题,也可以尝试
使用
在/ usr / local / pcre中安装pcre./ configure --prefix = / usr / local / pcre 使 sudo make install
命令,然后通过运行以下命令:
cd ~/Downloads/httpd-2.4.41/
./ configure --prefix = / home / {此处的用户名} / apache --with-pcre = / usr / local / pcre
制作
sudo make install
如果仍然遇到问题,请确保〜/ apache及其嵌套目录具有读/写权限。如果没有再次运行**sudo chmod -R 777 /home{your username here}/apache**
命令。
#7编译Apache HTTP Server。
cd ~/Downloads/httpd-2.2.25
sudo make
#8安装Apache HTTP Server。
cd ~/Downloads/httpd-2.2.25
sudo make install
可选 #9准备主机文件
sudo gedit /etc/hosts
27.0.0.1本地主机www.example.com
sudo gedit /home/{your username here}/apache/conf/httpd.conf
并复制:
Listen 8000
ServerName www.example.com:8000
#10测试安装以确保Apache HTTP Server正常工作。
/home/{your username here}//apache/bin/apachectl -k start