Apache httpd 设置和安装

Apache httpd setup and installation

提问人:Programmer 提问时间:2/25/2012 最后编辑:starballProgrammer 更新时间:12/20/2022 访问量:244195

问:

我正在尝试以普通用户(非root)身份在我的盒子中本地安装Apache HTTP服务器。

我已经下载了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服务器?

Apache APR

评论

1赞 Pacerier 6/25/2015
@JimGarrison,那为什么它没有关闭/移动呢?

答:

132赞 Oleg Mikheev 2/25/2012 #1

当它告诉你时,这意味着你应该去阅读Apache文档(http://httpd.apache.org/docs/2.4/install.html),它告诉你Please read documentation

从 Apache APR 下载最新版本的 APR 和 APR-Util, 将它们解压缩到 ./srclib/apr 和 ./srclib/apr-util 中(确保 域名没有版本号;例如,APR 分发必须在 ./srclib/apr/ 下)

然后做

./configure --with-included-apr

评论

0赞 Programmer 2/25/2012
' httpd/httpd-2.4.1 1062> ./configure --with-included-apr 检查所选布局...Apache 检查工作 mkdir -p...是的,检查处理长行和 -e.../bin/grep unknown-linux-gnu 检查目标系统类型...x86_64-unknown-linux-gnu 配置 Apache 可移植运行时库 ...configure: error: 已请求捆绑的 APR,但在 ./srclib/ 中找不到。下载对应的 apr 和 apr-util 包并解压到 ./srclib/。'哪个是要下载的corret站点,我应该在哪里安装
3赞 Programmer 2/25/2012
甜蜜的成功..需要更改 Makefile 中的行: #PROGRAM_LDADD = buildmark.o $(HTTPD_LDFLAGS) $(PROGRAM_DEPENDENCIES) $(PCRE_LIBS) $(EXTRA_LIBS) $(AP_LIBS) $(LIBS) ----> PROGRAM_LDADD = buildmark.o $(HTTPD_LDFLAGS) $(PROGRAM_DEPENDENCIES) $HOME/lib/usr/local/lib/libpcre.a $(EXTRA_LIBS) $(AP_LIBS) $(LIBS)
8赞 HaoQi Li 6/19/2013
请注意,表示目录中的目录./srclibsrclibhttpd-xxx
24赞 David Williams 1/28/2014
他们为什么不为你包括它呢?这似乎是在浪费时间
1赞 Zeeshan 4/8/2015
事先将 apr 和 apr-util 单独安装为独立的软件包,而不是仅仅将它们的源代码包含在 apache 中有什么好处吗?
1赞 rkosegi 2/25/2012 #2

1、你需要APR(apache portable runtime),它是apache web服务器的核心组件

2,如果你想做安装,你可能需要root账户

3、即使没有,apache 也无法在没有 root 帐户的情况下开始监听非特权端口(低于 1024)

4、获取root或要求有root的人从官方仓库安装apache(我不;不知道你运行的是哪个发行版),比如使用 yum、apt-get 等......

40赞 VaporCreations 4/8/2012 #3

对于 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 ..

您可以在下面找到更多信息

来源:VaporCreations.com

评论

0赞 Paul Gregoire 7/20/2012
除非您是 root 用户,否则您需要在“make install”调用中添加前缀“sudo”
0赞 Sean the Bean 8/16/2012
谢谢。我缺少一些参数来 ./configure
0赞 Chaminda Bandara 1/30/2019
之后如何在 Red Hat Enterprise Linux Server release 7.4 (Maipo) 上启动 httpd 服务?make install
21赞 Eddie 5/3/2012 #4

以下是我在非root用户上安装apache-httpd的步骤:

  1. 下载并解压 apache-httpd-2.4.2(但在 ./configuring, 制作和安装它,请按照以下步骤操作:)
  2. 下载并解压缩 APR & APR-UTIL 到“./srclib/apr”和 “./srclib/apr-util” 文件夹。这需要 ./configure --with-apr=./apache/httpd-2.4.2/srclib/apr (和) --with-included-apr (选项)。
  3. 下载、解压、./configure (with) --prefix=localURL、make 和 将 PCRE 安装到“./pcre”文件夹中。这需要 ./configure --with-pcre=/home/username/apache/pcre(选项)。
  4. 通过以下命令配置 apache-httpd(我喜欢 启用以下命令中编写的某些选项: ./configure --enable-file-cache --enable-cache --enable-disk-cache --enable-mem-cache --enable-deflate --enable-expires --enable-headers --enable-usertrack --enable-cgi --enable-vhost-alias --enable-rewrite --enable-so --with-apr=/home/username/apache/httpd-2.4.2/srclib/apr --prefix=/home/username/apache/httpd-2.4.2/ --with-included-apr --with-pcre=/home/username/apache/pcre 注意:配置 apache-httpd 时,仅在安装了 OpenSSL 时才使用选项“--enable-ssl”,否则不要启用它。
  5. 现在在命令行上,输入“make”和“make install”命令。
  6. 打开并配置“httpd.conf”文件,例如: “vi /home/eddie_kumar/apache/httpd-2.4.2/conf/httpd.conf”

重要提示:不要忘记将默认端口从 80 更改为其他端口,例如 8080,这对于非 root 用户尤其重要 用户。(如何打开httpd.conf ->搜索“Listen 80” ->更改 到“听 8080”。

就是这样,现在打开浏览器输入“localhost:8080”,它应该显示“它有效!

评论

0赞 Reza S 6/14/2012
如果您是 debian 用户,只需执行 “apt-get install libpcre3-dev”
0赞 Chaminda Bandara 1/30/2019
之后如何在 Red Hat Enterprise Linux Server release 7.4 (Maipo) 上启动 httpd 服务?make install
28赞 shrimpwagon 1/23/2013 #5

如果你有 Debian/Ubuntu,你可以:

apt-get install libapr1-dev libaprutil1-dev

然后./configure

评论

0赞 haidarvm 5/16/2015
这对 Ubuntu 用户有帮助
3赞 sajinshrestha 1/23/2013 #6

如果您使用的是 Fedora,则可以使用 yum 安装 APR、APR-Util 和 PCRE。您还需要下载 apr-devel、apr-util-devel 和 pcre-devel。

话虽如此,您只需在终端上运行以下命令,而不再“配置:错误:未找到 APR..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。

评论

0赞 srock 9/7/2014
匪夷所思!目前尚不清楚您是否需要 -devel 版本。如果您是 Fedora 或 redhat,或者是 redhat 的 amazon ec2 AWS 实例,这是最佳答案。
0赞 Khanna111 10/23/2014 #7

与 Apr 或 pcre 相关的错误需要下载源代码,并且需要让 Apache HTTPD“configure”过程知道文件系统上的这些源代码位置。例如:如果您在 ./srclib(相对于 apache httpd)下载了 APR 的源代码,那么您将使用
--with-included-apr
作为配置选项。

另一方面,如果你不想构建而是安装 APR / APR-UTIL,那么你需要在 CentOS / RedHat 上安装以下内容:
百胜餐饮集团安装 apr-util-devel apr-devel
但是,yum 提供的 APR 版本可能与此版本的 Apache httpd 的预期不匹配。在这种情况下,您可以下载 APR 和 APR-UTIL 并使用 --with-included-apr 选项。

您还可以使用相同的“配置、制作、安装”过程来构建 PCRE,然后从上次构建 Apache httpd 的地方继续构建。
或者你可以安装pcre: 百胜餐饮集团安装 pcre-devel

如果在构建 PCRE 时:您看到“编译:无法识别的选项”,那么您可能还需要其他依赖项: 详情请参阅:
http://khanna111.com/wordPressBlog/2012/09/11/94087-2/
它还涵盖了“mod_deflate”和“zlib”。

0赞 Harsimranjit Singh Kler 9/13/2015 #8

基本步骤

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

0赞 rafiquenazir 3/4/2020 #9

在 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 服务器

#1 对于 ubuntu,安装包括 C 编译器在内的开发工具:

sudo apt-get install build-essential checkinstall

#2 下载并解压缩所需的文件

假设所有文件都已下载到 ~/Downloads 目录中

从 Apache 下载页面下载 Apache HTTP Server httpd-2.4.41.tar.gz (https://httpd.apache.org/download.cgi)

以及编译 apache HTTP 服务器所需的以下库:

阅读需求部分(http://httpd.apache.org/docs/2.4/install.html)***

#3 解压 tar 文件

  • tar -xvf httpd-2.4.41.tar.gz
  • tar -xvf apr-1.7.0.tar.gz
  • tar -xvf apr-util-1.6.1.tar.gz
  • tar -xvf pcre2-10.34.tar.gz

解压后,您应该在 ~/Downloads 中看到以下目录列表

  • 网址:httpd-2.4.41
  • 4 月 1.7.0
  • 4 月实用程序 1.6.1
  • PCRE2-10.34的

#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

注意:如果您在运行上述命令时遇到一些问题,也可以尝试

将 pcre 放入 /usr/local/pcre 中,使用

./configure --prefix=/usr/local/pcre 做 sudo make 安装

命令,然后通过运行以下命令:

   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 准备 hosts 文件

sudo gedit /etc/hosts

27.0.0.1 localhost 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

评论

0赞 yanzhang.guo 1/26/2021
#./apachectl -k start httpd: /usr/local/apache/conf/httpd.conf 第 66 行的语法错误: 无法将 modules/mod_authn_file.so 加载到服务器: /usr/local/apache/modules/mod_authn_file.so: 无法打开共享对象文件: 没有这样的文件或目录