New: httpd-2.4.12-1 (obsoletes: apache2)

Yaakov Selkowitz
Fri May 22 20:21:00 GMT 2015

The following packages have been added to the Cygwin distribution:

* httpd-2.4.12-1
* httpd-devel-2.4.12-1
* httpd-manual-2.4.12-1
* httpd-tools-2.4.12-1
* httpd-mod_ldap-2.4.12-1
* httpd-mod_lua-2.4.12-1
* httpd-mod_proxy_html-2.4.12-1
* httpd-mod_ssl-2.4.12-1

The Apache HTTP Server Project is a collaborative software development
effort aimed at creating a robust, commercial-grade, featureful, and
freely-available source code implementation of an HTTP (Web) server.

This is the latest upstream version, intended to replace the 2.2 version
provided by the 'apache2' packages.  But first, some history:

httpd 1.x was originally packaged for Cygwin as 'apache', possibly
matching the Debian package name, while still keeping the upstream
'httpd' file names.  When 2.0 came out, it was decided to create a
separate package which did not collide with 1.3 to aid the transition,
where all binary and directory names were versioned with '2', and hence
the package was named 'apache2'.

Unfortunately the incomplete and inconsistent renaming of 'apache2'
required a hackish patch which I then inherited some time ago and could
not drop without breaking compatibility during the 2.2 series.  Because
of the API and configuration changes involved in upgrading from 2.2 to
2.4, the opportunity was taken to avoid these renaming hacks and make
other changes to the packaging layout.

Therefore, installing 'httpd' will currently neither remove nor clobber
the 'apache2' packages.  This is being done to allow time for users to
reconfigure (which has to be done anyway) and rebuild any third-party
DSOs.  Please note that the 'apache2' packages will not be supported any
further, and in the near future, httpd will fully obsolete (and
uninstall) the apache2 packages.

The packaging changes are extensive in this release:

* All binaries use their original upstream names.

* The configuration files are now in /etc/httpd/conf, and all modules
and conf files can be referenced as relative paths to /etc/httpd.

* cyghttpd2core.dll (which required another hack) has been replaced by
exporting symbols from httpd.exe itself, which can be linked to with

* Modules which provide APIs which other DSOs require at link time have
been built statically into httpd, namely: mod_cache, mod_dav, mod_proxy,
mod_session, and mod_unixd.

* Modules with non-core dependencies are packaged separately.

* apxs is part of the -devel package again.  Instead of using apxs to
(un)install modules during postinstall/preremove, LoadModule config
snippets should be used instead.

* A new httpd.cygclass has been added to cygport git, which should be
used in place of apache2.cygclass.


More information about the Cygwin-announce mailing list