如何在 Ubuntu 上构建(配置选项)最新的 Apache

如何在 Ubuntu 上构建(配置选项)最新的 Apache

我无法弄清楚./configure在(较旧的)ubuntu 发行版上构建 apache 的正确选项是什么,以保留相同的配置文件系统。

我需要带有 MPM Worker 和 mod_WSGI 的 apache

我找到了这个没有安装 apache MPM 包错误相关问题,但没有答案解决我的问题。httpd -l 说“prefork.c”,听起来像我想要的“mpm-worker”尚未编译。

迄今为止:

# get latest tar from a mirror
wget http://apache.crihan.fr/dist//httpd/httpd-2.2.19.tar.gz
# untar
tar -xf httpd-2.2.19.tar.gz
# get inside
cd httpd-2.2.19

当前配置

 ./configure --enable-shared-mods=all --prefix=/usr/lib/apache2 --with-mpm=worker

(文档中实际上说“全部”不会构建模块,所以我想我必须稍后再修复它)

而且当然:

 make
 sudo make install

但是之后:

 No apache MPM package installed

并且确实不存在 MPM/usr/lib/apache2/mpm-worker/apache2

如何编译/构建 MPM-worker?我是否遗漏了其他配置参数?我是否应该创建一个ln -s PATH /usr/sbin/apache2与 ubuntu /etc/init.d/apache2 兼容的,或者还有其他建议的方法?

答案1

我找到了这个 url,它是来自 dapper 的 deb 规则文件(在您回复我的评论之前)。

http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/dapper/apache2/dapper/view/head:/debian/rules

这是 ubuntu 中 apache2 的主页。

https://launchpad.net/ubuntu/+source/apache2

我无法从那里找到 Karmic 的链接,但我只是替换了 URL 中的名称。

https://launchpad.net/ubuntu/karmic/+source/apache2

浏览一个版本并单击代码选项卡,查看 karmic 版本的代码库中的规则文件。

http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/karmic/apache2/karmic/view/head:/debian/rules 说:

 --enable-layout=Debian --enable-so \
                  --with-program-name=apache2  \
          --with-ldap=yes --with-ldap-include=/usr/include \
          --with-ldap-lib=/usr/lib \
          --with-suexec-caller=www-data \
          --with-suexec-bin=/usr/lib/apache2/suexec \
          --with-suexec-docroot=/var/www \
          --with-suexec-userdir=public_html \
          --with-suexec-logfile=/var/log/apache2/suexec.log \
          --with-suexec-uidmin=100 \
          --enable-suexec=shared \
          --enable-log-config=static --enable-logio=static \
          --with-apr=/usr/bin/apr-1-config \
          --with-apr-util=/usr/bin/apu-1-config \
          --with-pcre=yes \
          --enable-pie

AP2_MODS_CONFARGS =   --enable-authn-alias=shared --enable-authnz-ldap=shared  \
          --enable-disk-cache=shared --enable-cache=shared \
          --enable-mem-cache=shared --enable-file-cache=shared \
          --enable-cern-meta=shared --enable-dumpio=shared --enable-ext-filter=shared \
          --enable-charset-lite=shared --enable-cgi=shared \
          --enable-dav-lock=shared --enable-log-forensic=shared \
          --enable-ldap=shared --enable-proxy=shared \
          --enable-proxy-connect=shared --enable-proxy-ftp=shared \
          --enable-proxy-http=shared --enable-proxy-ajp=shared \
          --enable-proxy-balancer=shared --enable-ssl=shared \
          --enable-authn-dbm=shared --enable-authn-anon=shared \
          --enable-authn-dbd=shared --enable-authn-file=shared \
          --enable-authn-default=shared --enable-authz-host=shared \
          --enable-authz-groupfile=shared --enable-authz-user=shared \
          --enable-authz-dbm=shared --enable-authz-owner=shared \
          --enable-authnz-ldap=shared --enable-authz-default=shared \
          --enable-auth-basic=shared --enable-auth-digest=shared \
          --enable-dbd=shared --enable-deflate=shared \
          --enable-include=shared --enable-filter=shared \
          --enable-env=shared --enable-mime-magic=shared \
          --enable-expires=shared --enable-headers=shared \
          --enable-ident=shared --enable-usertrack=shared \
          --enable-unique-id=shared --enable-setenvif=shared \
          --enable-version=shared --enable-status=shared \
          --enable-autoindex=shared --enable-asis=shared \
          --enable-info=shared --enable-cgid=shared \
          --enable-dav=shared --enable-dav-fs=shared \
          --enable-vhost-alias=shared --enable-negotiation=shared \
          --enable-dir=shared --enable-imagemap=shared \
          --enable-actions=shared --enable-speling=shared \
          --enable-userdir=shared --enable-alias=shared \
          --enable-rewrite=shared --enable-mime=shared \
          --enable-substitute=shared

这将允许您使用与已安装的 deb 相同的选项来构建 apache。

不过,我认为更简单的方法是使用反向移植版本,或者自己制作一个。获取源 deb 并在 Karmic 下构建它。

相关内容