From 2a72fac7b6fe47b84d02322a92f0b749b023b367 Mon Sep 17 00:00:00 2001 From: ryoon Date: Fri, 13 Apr 2012 18:50:48 +0000 Subject: Import apache-2.4.1 as www/apache24. The Apache HTTP Server Project is an effort to develop and maintain an open-source HTTP server for various modern desktop and server operating systems, such as UNIX and Windows NT. The goal of this project is to provide a secure, efficient and extensible server which provides HTTP services in sync with the current HTTP standards. This package tracks 2.4.x release. --- www/apache24/DESCR | 7 + www/apache24/Makefile | 211 ++++++ www/apache24/PLIST | 1409 +++++++++++++++++++++++++++++++++++++++++ www/apache24/buildlink3.mk | 27 + www/apache24/distinfo | 15 + www/apache24/files/apache.sh | 57 ++ www/apache24/files/mkcert.sh | 914 ++++++++++++++++++++++++++ www/apache24/options.mk | 59 ++ www/apache24/patches/patch-aa | 146 +++++ www/apache24/patches/patch-ab | 15 + www/apache24/patches/patch-ac | 12 + www/apache24/patches/patch-ad | 31 + www/apache24/patches/patch-ae | 59 ++ www/apache24/patches/patch-ag | 16 + www/apache24/patches/patch-ai | 19 + www/apache24/patches/patch-al | 31 + www/apache24/patches/patch-am | 13 + www/apache24/patches/patch-aw | 15 + 18 files changed, 3056 insertions(+) create mode 100644 www/apache24/DESCR create mode 100644 www/apache24/Makefile create mode 100644 www/apache24/PLIST create mode 100644 www/apache24/buildlink3.mk create mode 100644 www/apache24/distinfo create mode 100644 www/apache24/files/apache.sh create mode 100644 www/apache24/files/mkcert.sh create mode 100644 www/apache24/options.mk create mode 100644 www/apache24/patches/patch-aa create mode 100644 www/apache24/patches/patch-ab create mode 100644 www/apache24/patches/patch-ac create mode 100644 www/apache24/patches/patch-ad create mode 100644 www/apache24/patches/patch-ae create mode 100644 www/apache24/patches/patch-ag create mode 100644 www/apache24/patches/patch-ai create mode 100644 www/apache24/patches/patch-al create mode 100644 www/apache24/patches/patch-am create mode 100644 www/apache24/patches/patch-aw diff --git a/www/apache24/DESCR b/www/apache24/DESCR new file mode 100644 index 00000000000..cf30b6520e6 --- /dev/null +++ b/www/apache24/DESCR @@ -0,0 +1,7 @@ +The Apache HTTP Server Project is an effort to develop and maintain an +open-source HTTP server for various modern desktop and server operating +systems, such as UNIX and Windows NT. The goal of this project is to +provide a secure, efficient and extensible server which provides HTTP +services in sync with the current HTTP standards. + +This package tracks 2.4.x release. diff --git a/www/apache24/Makefile b/www/apache24/Makefile new file mode 100644 index 00000000000..7f276b09c73 --- /dev/null +++ b/www/apache24/Makefile @@ -0,0 +1,211 @@ +# $NetBSD: Makefile,v 1.1.1.1 2012/04/13 18:50:48 ryoon Exp $ +# + +DISTNAME= httpd-2.4.1 +PKGNAME= ${DISTNAME:S/httpd/apache/} +CATEGORIES= www +MASTER_SITES= ${MASTER_SITE_APACHE:=httpd/} \ + http://archive.apache.org/dist/httpd/ \ + http://archive.eu.apache.org/dist/httpd/ +EXTRACT_SUFX= .tar.bz2 + +MAINTAINER= ryoon@NetBSD.org +HOMEPAGE= http://httpd.apache.org/ +COMMENT= Apache HTTP (Web) server, version 2.4 +LICENSE= apache-2.0 + +PKG_DESTDIR_SUPPORT= user-destdir + +BUILD_DEFS+= IPV6_READY +BUILD_DEFS+= VARBASE +BUILD_DEFS+= APACHE_CUSTOM_CFLAGS + +GNU_CONFIGURE= yes +USE_LIBTOOL= yes +USE_TOOLS+= pax perl pkg-config + +CONFIGURE_ENV+= perlbin=${PERL5:Q} +CONFIGURE_ENV+= ac_cv_path_RSYNC=/nonexistent +CONFIGURE_ENV+= CFLAGS=${APACHE_CUSTOM_CFLAGS:M*:Q} + +CONFIGURE_ARGS+= --enable-layout=NetBSD +CONFIGURE_ARGS+= --with-port=80 +CONFIGURE_ARGS+= --enable-so +CONFIGURE_ARGS+= --enable-mods-shared=all + +CONFIGURE_ARGS+= --with-apr=${BUILDLINK_PREFIX.apr} +CONFIGURE_ARGS+= --with-apr-util=${BUILDLINK_PREFIX.apr-util} + +.include "../../mk/bsd.prefs.mk" +.include "../../devel/apr/buildlink3.mk" +.include "../../devel/apr-util/buildlink3.mk" +.include "../../devel/pcre/buildlink3.mk" +.include "../../security/openssl/buildlink3.mk" +.include "../../textproc/expat/buildlink3.mk" +.include "../../mk/dlopen.buildlink3.mk" +.include "../../mk/pthread.buildlink3.mk" + +CONFIGURE_ARGS+= --disable-include +CONFIGURE_ARGS+= --disable-log-config +CONFIGURE_ARGS+= --disable-env +CONFIGURE_ARGS+= --disable-mime +CONFIGURE_ARGS+= --disable-setenvif +CONFIGURE_ARGS+= --disable-status +CONFIGURE_ARGS+= --disable-autoindex +CONFIGURE_ARGS+= --disable-asis +CONFIGURE_ARGS+= --disable-cgi +CONFIGURE_ARGS+= --disable-negotiation +CONFIGURE_ARGS+= --disable-dir +CONFIGURE_ARGS+= --disable-actions +CONFIGURE_ARGS+= --disable-userdir +CONFIGURE_ARGS+= --disable-alias + +DFLT_APACHE_MODULES+= all +APACHE_MODULES?= ${DFLT_APACHE_MODULES} + +.include "options.mk" + +FIND_PREFIX:= APRDIR=apr +.include "../../mk/find-prefix.mk" + +# LDAP support +PLIST_VARS+= ldap +.if exists(${APRDIR}/lib/apr-util-1/apr_ldap.la) || !empty(PKG_OPTIONS:Mapache-shared-modules) +DFLT_APACHE_MODULES+= ldap authnz_ldap +PLIST.ldap= yes +.endif + +APACHE_USER?= www +APACHE_GROUP?= www +PKG_GROUPS= ${APACHE_GROUP} +PKG_USERS= ${APACHE_USER}:${APACHE_GROUP} +PKG_GROUPS_VARS= APACHE_GROUP +PKG_USERS_VARS= APACHE_USER + +PKG_SYSCONFVAR= apache +PKG_SYSCONFSUBDIR?= httpd +EGDIR= ${PREFIX}/share/examples/httpd +SBINDIR= ${PREFIX}/sbin +CONF_FILES+= ${EGDIR}/httpd.conf ${PKG_SYSCONFDIR}/httpd.conf +.for f in autoindex dav default info languages manual mpm \ + multilang-errordoc ssl userdir vhosts +CONF_FILES+= ${EGDIR}/extra/httpd-${f}.conf \ + ${PKG_SYSCONFDIR}/httpd-${f}.conf +.endfor +CONF_FILES+= ${EGDIR}/magic ${PKG_SYSCONFDIR}/magic +CONF_FILES+= ${EGDIR}/mime.types ${PKG_SYSCONFDIR}/mime.types +RCD_SCRIPTS= apache + +REQD_DIRS= ${PREFIX}/share/httpd +REQD_DIRS+= ${PREFIX}/share/httpd/htdocs +OWN_DIRS= ${VARBASE}/log/httpd +OWN_DIRS+= ${VARBASE}/db/httpd +OWN_DIRS_PERMS+= ${VARBASE}/db/httpd/proxy ${APACHE_USER} ${APACHE_GROUP} 0755 +FIX_PERMS_SBIN= apachectl envvars-std +FIX_PERMS_BIN= apxs dbmmanage mkcert +FIX_MAN_PERMS= man1/htdbm.1 man1/htpasswd.1 man1/htdigest.1 +FIX_MAN_PERMS+= man1/dbmmanage.1 man8/httpd.8 man8/suexec.8 +FIX_MAN_PERMS+= man8/rotatelogs.8 man1/logresolve.1 man1/apxs.1 +FIX_MAN_PERMS+= man8/apachectl.8 man1/ab.1 man1/httxt2dbm.1 + +# Fix paths in the apache manpages. +SUBST_CLASSES+= man +SUBST_STAGE.man= post-patch +SUBST_MESSAGE.man= Fixing paths in man pages. +SUBST_FILES.man= docs/man/*.1 docs/man/*.8 +SUBST_SED.man= -e 's,/usr/local/etc/apache,${PKG_SYSCONFDIR},' +SUBST_SED.man+= -e 's,/path/to/apache/etc,${PKG_SYSCONFDIR},' +SUBST_SED.man+= -e 's,/usr/local/apache2,${PREFIX}/share/httpd/htdocs,' +SUBST_SED.man+= -e 's,/usr/web,${PREFIX}/share/httpd/htdocs,' + +SUBST_CLASSES+= paths +SUBST_STAGE.paths= pre-configure +SUBST_MESSAGE.paths= Fixing paths. +SUBST_FILES.paths= config.layout Makefile.in support/apxs.in +SUBST_SED.paths= -e "s|@PREFIX@|${PREFIX}|g" +SUBST_SED.paths+= -e "s|@VARBASE@|${VARBASE}|g" +SUBST_SED.paths+= -e "s|@SYSCONFDIR@|${PKG_SYSCONFDIR}|g" +SUBST_SED.paths+= -e "s|@PAX@|${PAX}|g" +SUBST_SED.paths+= -e "s|@LOCALBASE@|${PREFIX}|g" + +SUBST_CLASSES+= apr-lt +SUBST_STAGE.apr-lt= post-configure +SUBST_MESSAGE.apr-lt= Fixing libtool references. +SUBST_FILES.apr-lt= build/config_vars.mk +SUBST_SED.apr-lt= -e 's|^\(LIBTOOL =\) [^ ]*|\1 $$(SHELL) $$(top_builddir)/build/libtool|g' + +SUBST_CLASSES+= confs +SUBST_STAGE.confs= post-configure +SUBST_MESSAGE.confs= Fixing configuration files. +SUBST_FILES.confs= docs/conf/httpd.conf +SUBST_FILES.confs+= docs/conf/extra/httpd-ssl.conf +SUBST_SED.confs= -e "s|${EGDIR}|${PKG_SYSCONFDIR}|g" +SUBST_SED.confs+= -e "s|${PREFIX}/htdocs|${PREFIX}/share/httpd/htdocs|g" +SUBST_SED.confs+= -e "s|${PREFIX}/conf|${PKG_SYSCONFDIR}|g" +SUBST_SED.confs+= -e "s|logs/|${VARBASE}/log/httpd/|g" +SUBST_SED.confs+= -e 's|/var/log/httpd/foo\.log|logs/foo.log/|g' +SUBST_SED.confs+= -e 's|^\(User[ ]\).*|\1${APACHE_USER}|g' +SUBST_SED.confs+= -e 's|^\(Group[ ]\).*|\1${APACHE_GROUP}|g' +SUBST_SED.confs+= -e 's|^Listen \(.*\)|Listen 0.0.0.0:\1|g' + +# abs_srcdir in config_vars.mk is used during install so needs to reference +# the work dir path, and by other packages such as ap2-fastcgi after install, +# so we fix after install to reference the installed path +SUBST_CLASSES+= abs_srcdir +SUBST_STAGE.abs_srcdir= post-install +SUBST_MESSAGE.abs_srcdir= Fixing abs_srcdir +SUBST_FILES.abs_srcdir= ${DESTDIR}${PREFIX}/share/httpd/build/config_vars.mk +SUBST_SED.abs_srcdir= -e 's|^\(abs_srcdir =\) .*|\1 ${PREFIX}/share/httpd|' + +REPLACE_PERL= docs/cgi-examples/printenv + +.if !empty(PKG_OPTIONS:Mapache-shared-modules) +. include "../../devel/zlib/buildlink3.mk" +CONFIGURE_ARGS+= --with-ssl=${BUILDLINK_PREFIX.openssl} +CONFIGURE_ARGS+= --with-z=${BUILDLINK_PREFIX.zlib} +.endif + +post-extract: + ${TOUCH} ${WRKSRC}/build/libtool + ${ECHO} "" >> ${WRKSRC}/docs/conf/extra/httpd-languages.conf.in + +post-build: + ${SED} "s#@PKG_SYSCONFDIR@#${PKG_SYSCONFDIR}#g" \ + < ${FILESDIR}/mkcert.sh > ${WRKDIR}/mkcert + +INSTALL_TARGET= install-conf install +INSTALL_MAKE_FLAGS+= sysconfdir="${EGDIR}" + +post-install: + ${LN} -sf ${APRDIR}/libexec/apr/libtool ${DESTDIR}${PREFIX}/share/httpd/build + ${LN} -sf ${SBINDIR}/envvars-std ${DESTDIR}${SBINDIR}/envvars + + ${INSTALL_SCRIPT} ${WRKDIR}/mkcert ${DESTDIR}${PREFIX}/bin + +.for file in ${FIX_PERMS_SBIN} + ${CHOWN} ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/sbin/${file} + ${CHMOD} ${BINMODE} ${DESTDIR}${PREFIX}/sbin/${file} +.endfor + +.for file in ${FIX_PERMS_BIN} + ${CHOWN} ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/bin/${file} + ${CHMOD} ${BINMODE} ${DESTDIR}${PREFIX}/bin/${file} +.endfor + + ${CHOWN} -h -R ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/share/httpd + ${CHOWN} -h -R ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/include/httpd + ${CHOWN} -h -R ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/lib/httpd + ${CHOWN} ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/libexec/cgi-bin/test-cgi + ${CHOWN} ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/libexec/cgi-bin/printenv + +.for file in ${FIX_MAN_PERMS} + ${CHOWN} ${MANOWN}:${MANGRP} ${DESTDIR}${PREFIX}/${PKGMANDIR}/${file} +.endfor + + ${CHMOD} -x ${DESTDIR}${PREFIX}/sbin/envvars-std +.if exists(${DESTDIR}${PREFIX}/sbin/suexec) + ${CHMOD} -w ${DESTDIR}${PREFIX}/sbin/suexec +.endif + +.include "../../mk/pthread.buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/www/apache24/PLIST b/www/apache24/PLIST new file mode 100644 index 00000000000..06e45fe3ef5 --- /dev/null +++ b/www/apache24/PLIST @@ -0,0 +1,1409 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ +bin/ab +bin/apxs +bin/dbmmanage +bin/htdbm +bin/htdigest +bin/htpasswd +bin/httxt2dbm +bin/logresolve +bin/mkcert +include/httpd/ap_compat.h +include/httpd/ap_config.h +include/httpd/ap_config_auto.h +include/httpd/ap_config_layout.h +include/httpd/ap_expr.h +include/httpd/ap_hooks.h +include/httpd/ap_listen.h +include/httpd/ap_mmn.h +include/httpd/ap_mpm.h +include/httpd/ap_provider.h +include/httpd/ap_regex.h +include/httpd/ap_regkey.h +include/httpd/ap_release.h +include/httpd/ap_slotmem.h +include/httpd/ap_socache.h +include/httpd/apache_noprobes.h +include/httpd/heartbeat.h +include/httpd/http_config.h +include/httpd/http_connection.h +include/httpd/http_core.h +include/httpd/http_log.h +include/httpd/http_main.h +include/httpd/http_protocol.h +include/httpd/http_request.h +include/httpd/http_vhost.h +include/httpd/httpd.h +include/httpd/mod_auth.h +include/httpd/mod_cache.h +include/httpd/mod_cgi.h +include/httpd/mod_core.h +include/httpd/mod_dav.h +include/httpd/mod_dbd.h +include/httpd/mod_include.h +include/httpd/mod_log_config.h +include/httpd/mod_proxy.h +include/httpd/mod_request.h +include/httpd/mod_rewrite.h +include/httpd/mod_session.h +include/httpd/mod_so.h +include/httpd/mod_ssl.h +include/httpd/mod_status.h +include/httpd/mod_unixd.h +include/httpd/mod_watchdog.h +include/httpd/mpm_common.h +include/httpd/os.h +include/httpd/scoreboard.h +include/httpd/unixd.h +include/httpd/util_cfgtree.h +include/httpd/util_charset.h +include/httpd/util_cookies.h +include/httpd/util_ebcdic.h +include/httpd/util_filter.h +include/httpd/util_ldap.h +include/httpd/util_md5.h +include/httpd/util_mutex.h +include/httpd/util_script.h +include/httpd/util_time.h +include/httpd/util_varbuf.h +include/httpd/util_xml.h +lib/httpd/httpd.exp +lib/httpd/mod_access_compat.so +lib/httpd/mod_allowmethods.so +lib/httpd/mod_auth_basic.so +lib/httpd/mod_auth_digest.so +lib/httpd/mod_auth_form.so +lib/httpd/mod_authn_anon.so +lib/httpd/mod_authn_core.so +lib/httpd/mod_authn_dbd.so +lib/httpd/mod_authn_dbm.so +lib/httpd/mod_authn_file.so +lib/httpd/mod_authn_socache.so +${PLIST.ldap}lib/httpd/mod_authnz_ldap.so +lib/httpd/mod_authz_core.so +lib/httpd/mod_authz_dbd.so +lib/httpd/mod_authz_dbm.so +lib/httpd/mod_authz_groupfile.so +lib/httpd/mod_authz_host.so +lib/httpd/mod_authz_owner.so +lib/httpd/mod_authz_user.so +lib/httpd/mod_buffer.so +lib/httpd/mod_cache.so +lib/httpd/mod_cache_disk.so +${PLIST.worker}lib/httpd/mod_cgid.so +lib/httpd/mod_charset_lite.so +lib/httpd/mod_data.so +lib/httpd/mod_dav.so +lib/httpd/mod_dav_fs.so +lib/httpd/mod_dav_lock.so +lib/httpd/mod_dbd.so +lib/httpd/mod_deflate.so +lib/httpd/mod_dialup.so +lib/httpd/mod_dumpio.so +lib/httpd/mod_echo.so +lib/httpd/mod_expires.so +lib/httpd/mod_ext_filter.so +lib/httpd/mod_file_cache.so +lib/httpd/mod_filter.so +lib/httpd/mod_headers.so +lib/httpd/mod_heartbeat.so +lib/httpd/mod_heartmonitor.so +lib/httpd/mod_info.so +lib/httpd/mod_lbmethod_bybusyness.so +lib/httpd/mod_lbmethod_byrequests.so +lib/httpd/mod_lbmethod_bytraffic.so +lib/httpd/mod_lbmethod_heartbeat.so +${PLIST.ldap}lib/httpd/mod_ldap.so +lib/httpd/mod_log_debug.so +lib/httpd/mod_log_forensic.so +lib/httpd/mod_logio.so +lib/httpd/mod_lua.so +lib/httpd/mod_mime_magic.so +lib/httpd/mod_proxy.so +lib/httpd/mod_proxy_ajp.so +lib/httpd/mod_proxy_balancer.so +lib/httpd/mod_proxy_connect.so +lib/httpd/mod_proxy_express.so +lib/httpd/mod_proxy_fcgi.so +lib/httpd/mod_proxy_fdpass.so +lib/httpd/mod_proxy_ftp.so +lib/httpd/mod_proxy_http.so +lib/httpd/mod_proxy_scgi.so +lib/httpd/mod_ratelimit.so +lib/httpd/mod_reflector.so +lib/httpd/mod_remoteip.so +lib/httpd/mod_reqtimeout.so +lib/httpd/mod_request.so +lib/httpd/mod_rewrite.so +lib/httpd/mod_sed.so +lib/httpd/mod_session.so +lib/httpd/mod_session_cookie.so +lib/httpd/mod_session_dbd.so +lib/httpd/mod_slotmem_plain.so +lib/httpd/mod_slotmem_shm.so +lib/httpd/mod_socache_dbm.so +lib/httpd/mod_socache_memcache.so +lib/httpd/mod_socache_shmcb.so +lib/httpd/mod_speling.so +lib/httpd/mod_ssl.so +lib/httpd/mod_substitute.so +lib/httpd/mod_unique_id.so +lib/httpd/mod_unixd.so +lib/httpd/mod_usertrack.so +lib/httpd/mod_version.so +lib/httpd/mod_vhost_alias.so +lib/httpd/mod_watchdog.so +libexec/cgi-bin/printenv +libexec/cgi-bin/test-cgi +man/man1/ab.1 +man/man1/apxs.1 +man/man1/dbmmanage.1 +man/man1/htdbm.1 +man/man1/htdigest.1 +man/man1/htpasswd.1 +man/man1/httxt2dbm.1 +man/man1/logresolve.1 +man/man8/apachectl.8 +man/man8/htcacheclean.8 +man/man8/httpd.8 +man/man8/rotatelogs.8 +man/man8/suexec.8 +sbin/apachectl +sbin/checkgid +sbin/envvars +sbin/envvars-std +sbin/fcgistarter +sbin/htcacheclean +sbin/httpd +sbin/rotatelogs +${PLIST.suexec}sbin/suexec +share/examples/httpd/extra/httpd-autoindex.conf +share/examples/httpd/extra/httpd-dav.conf +share/examples/httpd/extra/httpd-default.conf +share/examples/httpd/extra/httpd-info.conf +share/examples/httpd/extra/httpd-languages.conf +share/examples/httpd/extra/httpd-manual.conf +share/examples/httpd/extra/httpd-mpm.conf +share/examples/httpd/extra/httpd-multilang-errordoc.conf +share/examples/httpd/extra/httpd-ssl.conf +share/examples/httpd/extra/httpd-userdir.conf +share/examples/httpd/extra/httpd-vhosts.conf +share/examples/httpd/extra/proxy-html.conf +share/examples/httpd/httpd.conf +share/examples/httpd/magic +share/examples/httpd/mime.types +share/examples/rc.d/apache +share/httpd/build/config.nice +share/httpd/build/config_vars.mk +share/httpd/build/instdso.sh +share/httpd/build/library.mk +share/httpd/build/libtool +share/httpd/build/ltlib.mk +share/httpd/build/mkdir.sh +share/httpd/build/program.mk +share/httpd/build/rules.mk +share/httpd/build/special.mk +share/httpd/error/HTTP_BAD_GATEWAY.html.var +share/httpd/error/HTTP_BAD_REQUEST.html.var +share/httpd/error/HTTP_FORBIDDEN.html.var +share/httpd/error/HTTP_GONE.html.var +share/httpd/error/HTTP_INTERNAL_SERVER_ERROR.html.var +share/httpd/error/HTTP_LENGTH_REQUIRED.html.var +share/httpd/error/HTTP_METHOD_NOT_ALLOWED.html.var +share/httpd/error/HTTP_NOT_FOUND.html.var +share/httpd/error/HTTP_NOT_IMPLEMENTED.html.var +share/httpd/error/HTTP_PRECONDITION_FAILED.html.var +share/httpd/error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var +share/httpd/error/HTTP_REQUEST_TIME_OUT.html.var +share/httpd/error/HTTP_REQUEST_URI_TOO_LARGE.html.var +share/httpd/error/HTTP_SERVICE_UNAVAILABLE.html.var +share/httpd/error/HTTP_UNAUTHORIZED.html.var +share/httpd/error/HTTP_UNSUPPORTED_MEDIA_TYPE.html.var +share/httpd/error/HTTP_VARIANT_ALSO_VARIES.html.var +share/httpd/error/README +share/httpd/error/contact.html.var +share/httpd/error/include/bottom.html +share/httpd/error/include/spacer.html +share/httpd/error/include/top.html +share/httpd/htdocs/index.html +share/httpd/icons/README +share/httpd/icons/README.html +share/httpd/icons/a.gif +share/httpd/icons/a.png +share/httpd/icons/alert.black.gif +share/httpd/icons/alert.black.png +share/httpd/icons/alert.red.gif +share/httpd/icons/alert.red.png +share/httpd/icons/apache_pb.gif +share/httpd/icons/apache_pb.png +share/httpd/icons/apache_pb2.gif +share/httpd/icons/apache_pb2.png +share/httpd/icons/apache_pb2_ani.gif +share/httpd/icons/back.gif +share/httpd/icons/back.png +share/httpd/icons/ball.gray.gif +share/httpd/icons/ball.gray.png +share/httpd/icons/ball.red.gif +share/httpd/icons/ball.red.png +share/httpd/icons/binary.gif +share/httpd/icons/binary.png +share/httpd/icons/binhex.gif +share/httpd/icons/binhex.png +share/httpd/icons/blank.gif +share/httpd/icons/blank.png +share/httpd/icons/bomb.gif +share/httpd/icons/bomb.png +share/httpd/icons/box1.gif +share/httpd/icons/box1.png +share/httpd/icons/box2.gif +share/httpd/icons/box2.png +share/httpd/icons/broken.gif +share/httpd/icons/broken.png +share/httpd/icons/burst.gif +share/httpd/icons/burst.png +share/httpd/icons/c.gif +share/httpd/icons/c.png +share/httpd/icons/comp.blue.gif +share/httpd/icons/comp.blue.png +share/httpd/icons/comp.gray.gif +share/httpd/icons/comp.gray.png +share/httpd/icons/compressed.gif +share/httpd/icons/compressed.png +share/httpd/icons/continued.gif +share/httpd/icons/continued.png +share/httpd/icons/dir.gif +share/httpd/icons/dir.png +share/httpd/icons/diskimg.gif +share/httpd/icons/diskimg.png +share/httpd/icons/down.gif +share/httpd/icons/down.png +share/httpd/icons/dvi.gif +share/httpd/icons/dvi.png +share/httpd/icons/f.gif +share/httpd/icons/f.png +share/httpd/icons/folder.gif +share/httpd/icons/folder.open.gif +share/httpd/icons/folder.open.png +share/httpd/icons/folder.png +share/httpd/icons/folder.sec.gif +share/httpd/icons/folder.sec.png +share/httpd/icons/forward.gif +share/httpd/icons/forward.png +share/httpd/icons/generic.gif +share/httpd/icons/generic.png +share/httpd/icons/generic.red.gif +share/httpd/icons/generic.red.png +share/httpd/icons/generic.sec.gif +share/httpd/icons/generic.sec.png +share/httpd/icons/hand.right.gif +share/httpd/icons/hand.right.png +share/httpd/icons/hand.up.gif +share/httpd/icons/hand.up.png +share/httpd/icons/icon.sheet.gif +share/httpd/icons/icon.sheet.png +share/httpd/icons/image1.gif +share/httpd/icons/image1.png +share/httpd/icons/image2.gif +share/httpd/icons/image2.png +share/httpd/icons/image3.gif +share/httpd/icons/image3.png +share/httpd/icons/index.gif +share/httpd/icons/index.png +share/httpd/icons/layout.gif +share/httpd/icons/layout.png +share/httpd/icons/left.gif +share/httpd/icons/left.png +share/httpd/icons/link.gif +share/httpd/icons/link.png +share/httpd/icons/movie.gif +share/httpd/icons/movie.png +share/httpd/icons/odf6odb.png +share/httpd/icons/odf6odc.png +share/httpd/icons/odf6odf.png +share/httpd/icons/odf6odg.png +share/httpd/icons/odf6odi.png +share/httpd/icons/odf6odm.png +share/httpd/icons/odf6odp.png +share/httpd/icons/odf6ods.png +share/httpd/icons/odf6odt.png +share/httpd/icons/odf6otc.png +share/httpd/icons/odf6otf.png +share/httpd/icons/odf6otg.png +share/httpd/icons/odf6oth.png +share/httpd/icons/odf6oti.png +share/httpd/icons/odf6otp.png +share/httpd/icons/odf6ots.png +share/httpd/icons/odf6ott.png +share/httpd/icons/p.gif +share/httpd/icons/p.png +share/httpd/icons/patch.gif +share/httpd/icons/patch.png +share/httpd/icons/pdf.gif +share/httpd/icons/pdf.png +share/httpd/icons/pie0.gif +share/httpd/icons/pie0.png +share/httpd/icons/pie1.gif +share/httpd/icons/pie1.png +share/httpd/icons/pie2.gif +share/httpd/icons/pie2.png +share/httpd/icons/pie3.gif +share/httpd/icons/pie3.png +share/httpd/icons/pie4.gif +share/httpd/icons/pie4.png +share/httpd/icons/pie5.gif +share/httpd/icons/pie5.png +share/httpd/icons/pie6.gif +share/httpd/icons/pie6.png +share/httpd/icons/pie7.gif +share/httpd/icons/pie7.png +share/httpd/icons/pie8.gif +share/httpd/icons/pie8.png +share/httpd/icons/portal.gif +share/httpd/icons/portal.png +share/httpd/icons/ps.gif +share/httpd/icons/ps.png +share/httpd/icons/quill.gif +share/httpd/icons/quill.png +share/httpd/icons/right.gif +share/httpd/icons/right.png +share/httpd/icons/screw1.gif +share/httpd/icons/screw1.png +share/httpd/icons/screw2.gif +share/httpd/icons/screw2.png +share/httpd/icons/script.gif +share/httpd/icons/script.png +share/httpd/icons/small/back.gif +share/httpd/icons/small/back.png +share/httpd/icons/small/binary.gif +share/httpd/icons/small/binary.png +share/httpd/icons/small/binhex.gif +share/httpd/icons/small/binhex.png +share/httpd/icons/small/blank.gif +share/httpd/icons/small/blank.png +share/httpd/icons/small/broken.gif +share/httpd/icons/small/broken.png +share/httpd/icons/small/burst.gif +share/httpd/icons/small/burst.png +share/httpd/icons/small/comp1.gif +share/httpd/icons/small/comp1.png +share/httpd/icons/small/comp2.gif +share/httpd/icons/small/comp2.png +share/httpd/icons/small/compressed.gif +share/httpd/icons/small/compressed.png +share/httpd/icons/small/continued.gif +share/httpd/icons/small/continued.png +share/httpd/icons/small/doc.gif +share/httpd/icons/small/doc.png +share/httpd/icons/small/folder.gif +share/httpd/icons/small/folder.png +share/httpd/icons/small/folder2.gif +share/httpd/icons/small/folder2.png +share/httpd/icons/small/forward.gif +share/httpd/icons/small/forward.png +share/httpd/icons/small/generic.gif +share/httpd/icons/small/generic.png +share/httpd/icons/small/generic2.gif +share/httpd/icons/small/generic2.png +share/httpd/icons/small/generic3.gif +share/httpd/icons/small/generic3.png +share/httpd/icons/small/image.gif +share/httpd/icons/small/image.png +share/httpd/icons/small/image2.gif +share/httpd/icons/small/image2.png +share/httpd/icons/small/index.gif +share/httpd/icons/small/index.png +share/httpd/icons/small/key.gif +share/httpd/icons/small/key.png +share/httpd/icons/small/movie.gif +share/httpd/icons/small/movie.png +share/httpd/icons/small/patch.gif +share/httpd/icons/small/patch.png +share/httpd/icons/small/ps.gif +share/httpd/icons/small/ps.png +share/httpd/icons/small/rainbow.gif +share/httpd/icons/small/rainbow.png +share/httpd/icons/small/sound.gif +share/httpd/icons/small/sound.png +share/httpd/icons/small/sound2.gif +share/httpd/icons/small/sound2.png +share/httpd/icons/small/tar.gif +share/httpd/icons/small/tar.png +share/httpd/icons/small/text.gif +share/httpd/icons/small/text.png +share/httpd/icons/small/transfer.gif +share/httpd/icons/small/transfer.png +share/httpd/icons/small/unknown.gif +share/httpd/icons/small/unknown.png +share/httpd/icons/small/uu.gif +share/httpd/icons/small/uu.png +share/httpd/icons/sound1.gif +share/httpd/icons/sound1.png +share/httpd/icons/sound2.gif +share/httpd/icons/sound2.png +share/httpd/icons/sphere1.gif +share/httpd/icons/sphere1.png +share/httpd/icons/sphere2.gif +share/httpd/icons/sphere2.png +share/httpd/icons/svg.png +share/httpd/icons/tar.gif +share/httpd/icons/tar.png +share/httpd/icons/tex.gif +share/httpd/icons/tex.png +share/httpd/icons/text.gif +share/httpd/icons/text.png +share/httpd/icons/transfer.gif +share/httpd/icons/transfer.png +share/httpd/icons/unknown.gif +share/httpd/icons/unknown.png +share/httpd/icons/up.gif +share/httpd/icons/up.png +share/httpd/icons/uu.gif +share/httpd/icons/uu.png +share/httpd/icons/uuencoded.gif +share/httpd/icons/uuencoded.png +share/httpd/icons/world1.gif +share/httpd/icons/world1.png +share/httpd/icons/world2.gif +share/httpd/icons/world2.png +share/httpd/icons/xml.png +share/httpd/manual/BUILDING +share/httpd/manual/LICENSE +share/httpd/manual/bind.html +share/httpd/manual/bind.html.de +share/httpd/manual/bind.html.en +share/httpd/manual/bind.html.fr +share/httpd/manual/bind.html.ja.utf8 +share/httpd/manual/bind.html.ko.euc-kr +share/httpd/manual/bind.html.tr.utf8 +share/httpd/manual/caching.html +share/httpd/manual/caching.html.en +share/httpd/manual/caching.html.fr +share/httpd/manual/caching.html.tr.utf8 +share/httpd/manual/configuring.html +share/httpd/manual/configuring.html.de +share/httpd/manual/configuring.html.en +share/httpd/manual/configuring.html.fr +share/httpd/manual/configuring.html.ja.utf8 +share/httpd/manual/configuring.html.ko.euc-kr +share/httpd/manual/configuring.html.tr.utf8 +share/httpd/manual/content-negotiation.html +share/httpd/manual/content-negotiation.html.en +share/httpd/manual/content-negotiation.html.fr +share/httpd/manual/content-negotiation.html.ja.utf8 +share/httpd/manual/content-negotiation.html.ko.euc-kr +share/httpd/manual/content-negotiation.html.tr.utf8 +share/httpd/manual/convenience.map +share/httpd/manual/custom-error.html +share/httpd/manual/custom-error.html.en +share/httpd/manual/custom-error.html.es +share/httpd/manual/custom-error.html.fr +share/httpd/manual/custom-error.html.ja.utf8 +share/httpd/manual/custom-error.html.ko.euc-kr +share/httpd/manual/custom-error.html.tr.utf8 +share/httpd/manual/developer/API.html +share/httpd/manual/developer/API.html.en +share/httpd/manual/developer/debugging.html +share/httpd/manual/developer/debugging.html.en +share/httpd/manual/developer/documenting.html +share/httpd/manual/developer/documenting.html.en +share/httpd/manual/developer/documenting.html.zh-cn +share/httpd/manual/developer/filters.html +share/httpd/manual/developer/filters.html.en +share/httpd/manual/developer/hooks.html +share/httpd/manual/developer/hooks.html.en +share/httpd/manual/developer/index.html +share/httpd/manual/developer/index.html.en +share/httpd/manual/developer/index.html.zh-cn +share/httpd/manual/developer/modules.html +share/httpd/manual/developer/modules.html.en +share/httpd/manual/developer/modules.html.ja.utf8 +share/httpd/manual/developer/new_api_2_4.html +share/httpd/manual/developer/new_api_2_4.html.en +share/httpd/manual/developer/output-filters.html +share/httpd/manual/developer/output-filters.html.en +share/httpd/manual/developer/request.html +share/httpd/manual/developer/request.html.en +share/httpd/manual/developer/thread_safety.html +share/httpd/manual/developer/thread_safety.html.en +share/httpd/manual/dns-caveats.html +share/httpd/manual/dns-caveats.html.en +share/httpd/manual/dns-caveats.html.fr +share/httpd/manual/dns-caveats.html.ja.utf8 +share/httpd/manual/dns-caveats.html.ko.euc-kr +share/httpd/manual/dns-caveats.html.tr.utf8 +share/httpd/manual/dso.html +share/httpd/manual/dso.html.en +share/httpd/manual/dso.html.fr +share/httpd/manual/dso.html.ja.utf8 +share/httpd/manual/dso.html.ko.euc-kr +share/httpd/manual/dso.html.tr.utf8 +share/httpd/manual/env.html +share/httpd/manual/env.html.en +share/httpd/manual/env.html.fr +share/httpd/manual/env.html.ja.utf8 +share/httpd/manual/env.html.ko.euc-kr +share/httpd/manual/env.html.tr.utf8 +share/httpd/manual/expr.html +share/httpd/manual/expr.html.en +share/httpd/manual/expr.html.fr +share/httpd/manual/faq/index.html +share/httpd/manual/faq/index.html.en +share/httpd/manual/faq/index.html.fr +share/httpd/manual/faq/index.html.tr.utf8 +share/httpd/manual/faq/index.html.zh-cn +share/httpd/manual/filter.html +share/httpd/manual/filter.html.en +share/httpd/manual/filter.html.es +share/httpd/manual/filter.html.fr +share/httpd/manual/filter.html.ja.utf8 +share/httpd/manual/filter.html.ko.euc-kr +share/httpd/manual/filter.html.tr.utf8 +share/httpd/manual/glossary.html +share/httpd/manual/glossary.html.de +share/httpd/manual/glossary.html.en +share/httpd/manual/glossary.html.es +share/httpd/manual/glossary.html.fr +share/httpd/manual/glossary.html.ja.utf8 +share/httpd/manual/glossary.html.ko.euc-kr +share/httpd/manual/glossary.html.tr.utf8 +share/httpd/manual/handler.html +share/httpd/manual/handler.html.en +share/httpd/manual/handler.html.es +share/httpd/manual/handler.html.fr +share/httpd/manual/handler.html.ja.utf8 +share/httpd/manual/handler.html.ko.euc-kr +share/httpd/manual/handler.html.tr.utf8 +share/httpd/manual/handler.html.zh-cn +share/httpd/manual/howto/access.html +share/httpd/manual/howto/access.html.en +share/httpd/manual/howto/auth.html +share/httpd/manual/howto/auth.html.en +share/httpd/manual/howto/auth.html.fr +share/httpd/manual/howto/auth.html.ja.utf8 +share/httpd/manual/howto/auth.html.ko.euc-kr +share/httpd/manual/howto/auth.html.tr.utf8 +share/httpd/manual/howto/cgi.html +share/httpd/manual/howto/cgi.html.en +share/httpd/manual/howto/cgi.html.fr +share/httpd/manual/howto/cgi.html.ja.utf8 +share/httpd/manual/howto/cgi.html.ko.euc-kr +share/httpd/manual/howto/htaccess.html +share/httpd/manual/howto/htaccess.html.en +share/httpd/manual/howto/htaccess.html.fr +share/httpd/manual/howto/htaccess.html.ja.utf8 +share/httpd/manual/howto/htaccess.html.ko.euc-kr +share/httpd/manual/howto/htaccess.html.pt-br +share/httpd/manual/howto/index.html +share/httpd/manual/howto/index.html.en +share/httpd/manual/howto/index.html.ja.utf8 +share/httpd/manual/howto/index.html.ko.euc-kr +share/httpd/manual/howto/index.html.zh-cn +share/httpd/manual/howto/public_html.html +share/httpd/manual/howto/public_html.html.en +share/httpd/manual/howto/public_html.html.fr +share/httpd/manual/howto/public_html.html.ja.utf8 +share/httpd/manual/howto/public_html.html.ko.euc-kr +share/httpd/manual/howto/public_html.html.tr.utf8 +share/httpd/manual/howto/ssi.html +share/httpd/manual/howto/ssi.html.en +share/httpd/manual/howto/ssi.html.fr +share/httpd/manual/howto/ssi.html.ja.utf8 +share/httpd/manual/howto/ssi.html.ko.euc-kr +share/httpd/manual/images/apache_header.gif +share/httpd/manual/images/caching_fig1.gif +share/httpd/manual/images/caching_fig1.png +share/httpd/manual/images/caching_fig1.tr.png +share/httpd/manual/images/custom_errordocs.png +share/httpd/manual/images/down.gif +share/httpd/manual/images/favicon.ico +share/httpd/manual/images/feather.gif +share/httpd/manual/images/feather.png +share/httpd/manual/images/filter_arch.png +share/httpd/manual/images/filter_arch.tr.png +share/httpd/manual/images/home.gif +share/httpd/manual/images/index.gif +share/httpd/manual/images/left.gif +share/httpd/manual/images/mod_filter_new.gif +share/httpd/manual/images/mod_filter_new.png +share/httpd/manual/images/mod_filter_new.tr.png +share/httpd/manual/images/mod_filter_old.gif +share/httpd/manual/images/mod_rewrite_fig1.gif +share/httpd/manual/images/mod_rewrite_fig1.png +share/httpd/manual/images/mod_rewrite_fig2.gif +share/httpd/manual/images/mod_rewrite_fig2.png +share/httpd/manual/images/pixel.gif +share/httpd/manual/images/rewrite_rule_flow.png +share/httpd/manual/images/right.gif +share/httpd/manual/images/ssl_intro_fig1.gif +share/httpd/manual/images/ssl_intro_fig1.png +share/httpd/manual/images/ssl_intro_fig2.gif +share/httpd/manual/images/ssl_intro_fig2.png +share/httpd/manual/images/ssl_intro_fig3.gif +share/httpd/manual/images/ssl_intro_fig3.png +share/httpd/manual/images/sub.gif +share/httpd/manual/images/syntax_rewritecond.png +share/httpd/manual/images/syntax_rewriterule.png +share/httpd/manual/images/up.gif +share/httpd/manual/index.html +share/httpd/manual/index.html.da +share/httpd/manual/index.html.de +share/httpd/manual/index.html.en +share/httpd/manual/index.html.es +share/httpd/manual/index.html.fr +share/httpd/manual/index.html.ja.utf8 +share/httpd/manual/index.html.ko.euc-kr +share/httpd/manual/index.html.pt-br +share/httpd/manual/index.html.tr.utf8 +share/httpd/manual/index.html.zh-cn +share/httpd/manual/install.html +share/httpd/manual/install.html.de +share/httpd/manual/install.html.en +share/httpd/manual/install.html.es +share/httpd/manual/install.html.fr +share/httpd/manual/install.html.ja.utf8 +share/httpd/manual/install.html.ko.euc-kr +share/httpd/manual/install.html.tr.utf8 +share/httpd/manual/invoking.html +share/httpd/manual/invoking.html.de +share/httpd/manual/invoking.html.en +share/httpd/manual/invoking.html.es +share/httpd/manual/invoking.html.fr +share/httpd/manual/invoking.html.ja.utf8 +share/httpd/manual/invoking.html.ko.euc-kr +share/httpd/manual/invoking.html.tr.utf8 +share/httpd/manual/license.html +share/httpd/manual/license.html.en +share/httpd/manual/logs.html +share/httpd/manual/logs.html.en +share/httpd/manual/logs.html.fr +share/httpd/manual/logs.html.ja.utf8 +share/httpd/manual/logs.html.ko.euc-kr +share/httpd/manual/logs.html.tr.utf8 +share/httpd/manual/misc/index.html +share/httpd/manual/misc/index.html.en +share/httpd/manual/misc/index.html.fr +share/httpd/manual/misc/index.html.ko.euc-kr +share/httpd/manual/misc/index.html.tr.utf8 +share/httpd/manual/misc/index.html.zh-cn +share/httpd/manual/misc/password_encryptions.html +share/httpd/manual/misc/password_encryptions.html.en +share/httpd/manual/misc/perf-tuning.html +share/httpd/manual/misc/perf-tuning.html.en +share/httpd/manual/misc/perf-tuning.html.fr +share/httpd/manual/misc/perf-tuning.html.ko.euc-kr +share/httpd/manual/misc/perf-tuning.html.tr.utf8 +share/httpd/manual/misc/relevant_standards.html +share/httpd/manual/misc/relevant_standards.html.en +share/httpd/manual/misc/relevant_standards.html.ko.euc-kr +share/httpd/manual/misc/security_tips.html +share/httpd/manual/misc/security_tips.html.en +share/httpd/manual/misc/security_tips.html.fr +share/httpd/manual/misc/security_tips.html.ko.euc-kr +share/httpd/manual/misc/security_tips.html.tr.utf8 +share/httpd/manual/mod/core.html +share/httpd/manual/mod/core.html.de +share/httpd/manual/mod/core.html.en +share/httpd/manual/mod/core.html.es +share/httpd/manual/mod/core.html.fr +share/httpd/manual/mod/core.html.ja.utf8 +share/httpd/manual/mod/core.html.tr.utf8 +share/httpd/manual/mod/directive-dict.html +share/httpd/manual/mod/directive-dict.html.en +share/httpd/manual/mod/directive-dict.html.ja.utf8 +share/httpd/manual/mod/directive-dict.html.ko.euc-kr +share/httpd/manual/mod/directive-dict.html.tr.utf8 +share/httpd/manual/mod/directives.html +share/httpd/manual/mod/directives.html.de +share/httpd/manual/mod/directives.html.en +share/httpd/manual/mod/directives.html.es +share/httpd/manual/mod/directives.html.ja.utf8 +share/httpd/manual/mod/directives.html.ko.euc-kr +share/httpd/manual/mod/directives.html.tr.utf8 +share/httpd/manual/mod/directives.html.zh-cn +share/httpd/manual/mod/event.html +share/httpd/manual/mod/event.html.en +share/httpd/manual/mod/event.html.fr +share/httpd/manual/mod/index.html +share/httpd/manual/mod/index.html.de +share/httpd/manual/mod/index.html.en +share/httpd/manual/mod/index.html.es +share/httpd/manual/mod/index.html.fr +share/httpd/manual/mod/index.html.ja.utf8 +share/httpd/manual/mod/index.html.ko.euc-kr +share/httpd/manual/mod/index.html.tr.utf8 +share/httpd/manual/mod/index.html.zh-cn +share/httpd/manual/mod/mod_access_compat.html +share/httpd/manual/mod/mod_access_compat.html.en +share/httpd/manual/mod/mod_access_compat.html.fr +share/httpd/manual/mod/mod_access_compat.html.ja.utf8 +share/httpd/manual/mod/mod_actions.html +share/httpd/manual/mod/mod_actions.html.de +share/httpd/manual/mod/mod_actions.html.en +share/httpd/manual/mod/mod_actions.html.fr +share/httpd/manual/mod/mod_actions.html.ja.utf8 +share/httpd/manual/mod/mod_actions.html.ko.euc-kr +share/httpd/manual/mod/mod_alias.html +share/httpd/manual/mod/mod_alias.html.en +share/httpd/manual/mod/mod_alias.html.fr +share/httpd/manual/mod/mod_alias.html.ja.utf8 +share/httpd/manual/mod/mod_alias.html.ko.euc-kr +share/httpd/manual/mod/mod_alias.html.tr.utf8 +share/httpd/manual/mod/mod_allowmethods.html +share/httpd/manual/mod/mod_allowmethods.html.en +share/httpd/manual/mod/mod_asis.html +share/httpd/manual/mod/mod_asis.html.en +share/httpd/manual/mod/mod_asis.html.fr +share/httpd/manual/mod/mod_asis.html.ja.utf8 +share/httpd/manual/mod/mod_asis.html.ko.euc-kr +share/httpd/manual/mod/mod_auth_basic.html +share/httpd/manual/mod/mod_auth_basic.html.en +share/httpd/manual/mod/mod_auth_basic.html.fr +share/httpd/manual/mod/mod_auth_basic.html.ja.utf8 +share/httpd/manual/mod/mod_auth_basic.html.ko.euc-kr +share/httpd/manual/mod/mod_auth_digest.html +share/httpd/manual/mod/mod_auth_digest.html.en +share/httpd/manual/mod/mod_auth_digest.html.fr +share/httpd/manual/mod/mod_auth_digest.html.ko.euc-kr +share/httpd/manual/mod/mod_auth_form.html +share/httpd/manual/mod/mod_auth_form.html.en +share/httpd/manual/mod/mod_authn_anon.html +share/httpd/manual/mod/mod_authn_anon.html.en +share/httpd/manual/mod/mod_authn_anon.html.ja.utf8 +share/httpd/manual/mod/mod_authn_anon.html.ko.euc-kr +share/httpd/manual/mod/mod_authn_core.html +share/httpd/manual/mod/mod_authn_core.html.en +share/httpd/manual/mod/mod_authn_core.html.fr +share/httpd/manual/mod/mod_authn_dbd.html +share/httpd/manual/mod/mod_authn_dbd.html.en +share/httpd/manual/mod/mod_authn_dbm.html +share/httpd/manual/mod/mod_authn_dbm.html.en +share/httpd/manual/mod/mod_authn_dbm.html.ja.utf8 +share/httpd/manual/mod/mod_authn_dbm.html.ko.euc-kr +share/httpd/manual/mod/mod_authn_file.html +share/httpd/manual/mod/mod_authn_file.html.en +share/httpd/manual/mod/mod_authn_file.html.fr +share/httpd/manual/mod/mod_authn_file.html.ja.utf8 +share/httpd/manual/mod/mod_authn_file.html.ko.euc-kr +share/httpd/manual/mod/mod_authn_socache.html +share/httpd/manual/mod/mod_authn_socache.html.en +share/httpd/manual/mod/mod_authnz_ldap.html +share/httpd/manual/mod/mod_authnz_ldap.html.en +share/httpd/manual/mod/mod_authnz_ldap.html.fr +share/httpd/manual/mod/mod_authz_core.html +share/httpd/manual/mod/mod_authz_core.html.en +share/httpd/manual/mod/mod_authz_dbd.html +share/httpd/manual/mod/mod_authz_dbd.html.en +share/httpd/manual/mod/mod_authz_dbm.html +share/httpd/manual/mod/mod_authz_dbm.html.en +share/httpd/manual/mod/mod_authz_dbm.html.ko.euc-kr +share/httpd/manual/mod/mod_authz_groupfile.html +share/httpd/manual/mod/mod_authz_groupfile.html.en +share/httpd/manual/mod/mod_authz_groupfile.html.ja.utf8 +share/httpd/manual/mod/mod_authz_groupfile.html.ko.euc-kr +share/httpd/manual/mod/mod_authz_host.html +share/httpd/manual/mod/mod_authz_host.html.en +share/httpd/manual/mod/mod_authz_host.html.fr +share/httpd/manual/mod/mod_authz_owner.html +share/httpd/manual/mod/mod_authz_owner.html.en +share/httpd/manual/mod/mod_authz_owner.html.fr +share/httpd/manual/mod/mod_authz_owner.html.ja.utf8 +share/httpd/manual/mod/mod_authz_owner.html.ko.euc-kr +share/httpd/manual/mod/mod_authz_user.html +share/httpd/manual/mod/mod_authz_user.html.en +share/httpd/manual/mod/mod_authz_user.html.fr +share/httpd/manual/mod/mod_authz_user.html.ja.utf8 +share/httpd/manual/mod/mod_authz_user.html.ko.euc-kr +share/httpd/manual/mod/mod_autoindex.html +share/httpd/manual/mod/mod_autoindex.html.en +share/httpd/manual/mod/mod_autoindex.html.fr +share/httpd/manual/mod/mod_autoindex.html.ja.utf8 +share/httpd/manual/mod/mod_autoindex.html.ko.euc-kr +share/httpd/manual/mod/mod_autoindex.html.tr.utf8 +share/httpd/manual/mod/mod_buffer.html +share/httpd/manual/mod/mod_buffer.html.en +share/httpd/manual/mod/mod_buffer.html.fr +share/httpd/manual/mod/mod_cache.html +share/httpd/manual/mod/mod_cache.html.en +share/httpd/manual/mod/mod_cache.html.fr +share/httpd/manual/mod/mod_cache.html.ja.utf8 +share/httpd/manual/mod/mod_cache.html.ko.euc-kr +share/httpd/manual/mod/mod_cache_disk.html +share/httpd/manual/mod/mod_cache_disk.html.en +share/httpd/manual/mod/mod_cache_disk.html.fr +share/httpd/manual/mod/mod_cache_disk.html.ja.utf8 +share/httpd/manual/mod/mod_cache_disk.html.ko.euc-kr +share/httpd/manual/mod/mod_cern_meta.html +share/httpd/manual/mod/mod_cern_meta.html.en +share/httpd/manual/mod/mod_cern_meta.html.ko.euc-kr +share/httpd/manual/mod/mod_cgi.html +share/httpd/manual/mod/mod_cgi.html.en +share/httpd/manual/mod/mod_cgi.html.ja.utf8 +share/httpd/manual/mod/mod_cgi.html.ko.euc-kr +share/httpd/manual/mod/mod_cgid.html +share/httpd/manual/mod/mod_cgid.html.en +share/httpd/manual/mod/mod_cgid.html.ja.utf8 +share/httpd/manual/mod/mod_cgid.html.ko.euc-kr +share/httpd/manual/mod/mod_charset_lite.html +share/httpd/manual/mod/mod_charset_lite.html.en +share/httpd/manual/mod/mod_charset_lite.html.ko.euc-kr +share/httpd/manual/mod/mod_data.html +share/httpd/manual/mod/mod_data.html.en +share/httpd/manual/mod/mod_dav.html +share/httpd/manual/mod/mod_dav.html.en +share/httpd/manual/mod/mod_dav.html.ja.utf8 +share/httpd/manual/mod/mod_dav.html.ko.euc-kr +share/httpd/manual/mod/mod_dav_fs.html +share/httpd/manual/mod/mod_dav_fs.html.en +share/httpd/manual/mod/mod_dav_fs.html.ja.utf8 +share/httpd/manual/mod/mod_dav_fs.html.ko.euc-kr +share/httpd/manual/mod/mod_dav_lock.html +share/httpd/manual/mod/mod_dav_lock.html.en +share/httpd/manual/mod/mod_dav_lock.html.ja.utf8 +share/httpd/manual/mod/mod_dbd.html +share/httpd/manual/mod/mod_dbd.html.en +share/httpd/manual/mod/mod_deflate.html +share/httpd/manual/mod/mod_deflate.html.en +share/httpd/manual/mod/mod_deflate.html.fr +share/httpd/manual/mod/mod_deflate.html.ja.utf8 +share/httpd/manual/mod/mod_deflate.html.ko.euc-kr +share/httpd/manual/mod/mod_dialup.html +share/httpd/manual/mod/mod_dialup.html.en +share/httpd/manual/mod/mod_dir.html +share/httpd/manual/mod/mod_dir.html.en +share/httpd/manual/mod/mod_dir.html.fr +share/httpd/manual/mod/mod_dir.html.ja.utf8 +share/httpd/manual/mod/mod_dir.html.ko.euc-kr +share/httpd/manual/mod/mod_dir.html.tr.utf8 +share/httpd/manual/mod/mod_dumpio.html +share/httpd/manual/mod/mod_dumpio.html.en +share/httpd/manual/mod/mod_dumpio.html.ja.utf8 +share/httpd/manual/mod/mod_echo.html +share/httpd/manual/mod/mod_echo.html.en +share/httpd/manual/mod/mod_echo.html.fr +share/httpd/manual/mod/mod_echo.html.ja.utf8 +share/httpd/manual/mod/mod_echo.html.ko.euc-kr +share/httpd/manual/mod/mod_env.html +share/httpd/manual/mod/mod_env.html.en +share/httpd/manual/mod/mod_env.html.fr +share/httpd/manual/mod/mod_env.html.ja.utf8 +share/httpd/manual/mod/mod_env.html.ko.euc-kr +share/httpd/manual/mod/mod_env.html.tr.utf8 +share/httpd/manual/mod/mod_example.html +share/httpd/manual/mod/mod_example.html.en +share/httpd/manual/mod/mod_example.html.ko.euc-kr +share/httpd/manual/mod/mod_expires.html +share/httpd/manual/mod/mod_expires.html.en +share/httpd/manual/mod/mod_expires.html.fr +share/httpd/manual/mod/mod_expires.html.ja.utf8 +share/httpd/manual/mod/mod_expires.html.ko.euc-kr +share/httpd/manual/mod/mod_ext_filter.html +share/httpd/manual/mod/mod_ext_filter.html.en +share/httpd/manual/mod/mod_ext_filter.html.ja.utf8 +share/httpd/manual/mod/mod_ext_filter.html.ko.euc-kr +share/httpd/manual/mod/mod_file_cache.html +share/httpd/manual/mod/mod_file_cache.html.en +share/httpd/manual/mod/mod_file_cache.html.ko.euc-kr +share/httpd/manual/mod/mod_filter.html +share/httpd/manual/mod/mod_filter.html.en +share/httpd/manual/mod/mod_headers.html +share/httpd/manual/mod/mod_headers.html.en +share/httpd/manual/mod/mod_headers.html.fr +share/httpd/manual/mod/mod_headers.html.ja.utf8 +share/httpd/manual/mod/mod_headers.html.ko.euc-kr +share/httpd/manual/mod/mod_heartbeat.html +share/httpd/manual/mod/mod_heartbeat.html.en +share/httpd/manual/mod/mod_heartmonitor.html +share/httpd/manual/mod/mod_heartmonitor.html.en +share/httpd/manual/mod/mod_ident.html +share/httpd/manual/mod/mod_ident.html.en +share/httpd/manual/mod/mod_ident.html.fr +share/httpd/manual/mod/mod_ident.html.ja.utf8 +share/httpd/manual/mod/mod_ident.html.ko.euc-kr +share/httpd/manual/mod/mod_imagemap.html +share/httpd/manual/mod/mod_imagemap.html.en +share/httpd/manual/mod/mod_imagemap.html.ko.euc-kr +share/httpd/manual/mod/mod_include.html +share/httpd/manual/mod/mod_include.html.en +share/httpd/manual/mod/mod_include.html.ja.utf8 +share/httpd/manual/mod/mod_info.html +share/httpd/manual/mod/mod_info.html.en +share/httpd/manual/mod/mod_info.html.fr +share/httpd/manual/mod/mod_info.html.ja.utf8 +share/httpd/manual/mod/mod_info.html.ko.euc-kr +share/httpd/manual/mod/mod_isapi.html +share/httpd/manual/mod/mod_isapi.html.en +share/httpd/manual/mod/mod_isapi.html.ko.euc-kr +share/httpd/manual/mod/mod_lbmethod_bybusyness.html +share/httpd/manual/mod/mod_lbmethod_bybusyness.html.en +share/httpd/manual/mod/mod_lbmethod_byrequests.html +share/httpd/manual/mod/mod_lbmethod_byrequests.html.en +share/httpd/manual/mod/mod_lbmethod_bytraffic.html +share/httpd/manual/mod/mod_lbmethod_bytraffic.html.en +share/httpd/manual/mod/mod_lbmethod_heartbeat.html +share/httpd/manual/mod/mod_lbmethod_heartbeat.html.en +share/httpd/manual/mod/mod_ldap.html +share/httpd/manual/mod/mod_ldap.html.en +share/httpd/manual/mod/mod_ldap.html.fr +share/httpd/manual/mod/mod_log_config.html +share/httpd/manual/mod/mod_log_config.html.en +share/httpd/manual/mod/mod_log_config.html.ja.utf8 +share/httpd/manual/mod/mod_log_config.html.ko.euc-kr +share/httpd/manual/mod/mod_log_config.html.tr.utf8 +share/httpd/manual/mod/mod_log_debug.html +share/httpd/manual/mod/mod_log_debug.html.en +share/httpd/manual/mod/mod_log_forensic.html +share/httpd/manual/mod/mod_log_forensic.html.en +share/httpd/manual/mod/mod_log_forensic.html.ja.utf8 +share/httpd/manual/mod/mod_log_forensic.html.tr.utf8 +share/httpd/manual/mod/mod_logio.html +share/httpd/manual/mod/mod_logio.html.en +share/httpd/manual/mod/mod_logio.html.ja.utf8 +share/httpd/manual/mod/mod_logio.html.ko.euc-kr +share/httpd/manual/mod/mod_logio.html.tr.utf8 +share/httpd/manual/mod/mod_lua.html +share/httpd/manual/mod/mod_lua.html.en +share/httpd/manual/mod/mod_mime.html +share/httpd/manual/mod/mod_mime.html.en +share/httpd/manual/mod/mod_mime.html.ja.utf8 +share/httpd/manual/mod/mod_mime_magic.html +share/httpd/manual/mod/mod_mime_magic.html.en +share/httpd/manual/mod/mod_negotiation.html +share/httpd/manual/mod/mod_negotiation.html.en +share/httpd/manual/mod/mod_negotiation.html.fr +share/httpd/manual/mod/mod_negotiation.html.ja.utf8 +share/httpd/manual/mod/mod_nw_ssl.html +share/httpd/manual/mod/mod_nw_ssl.html.en +share/httpd/manual/mod/mod_privileges.html +share/httpd/manual/mod/mod_privileges.html.en +share/httpd/manual/mod/mod_proxy.html +share/httpd/manual/mod/mod_proxy.html.en +share/httpd/manual/mod/mod_proxy.html.fr +share/httpd/manual/mod/mod_proxy.html.ja.utf8 +share/httpd/manual/mod/mod_proxy_ajp.html +share/httpd/manual/mod/mod_proxy_ajp.html.en +share/httpd/manual/mod/mod_proxy_ajp.html.ja.utf8 +share/httpd/manual/mod/mod_proxy_balancer.html +share/httpd/manual/mod/mod_proxy_balancer.html.en +share/httpd/manual/mod/mod_proxy_balancer.html.ja.utf8 +share/httpd/manual/mod/mod_proxy_connect.html +share/httpd/manual/mod/mod_proxy_connect.html.en +share/httpd/manual/mod/mod_proxy_connect.html.ja.utf8 +share/httpd/manual/mod/mod_proxy_express.html +share/httpd/manual/mod/mod_proxy_express.html.en +share/httpd/manual/mod/mod_proxy_fcgi.html +share/httpd/manual/mod/mod_proxy_fcgi.html.en +share/httpd/manual/mod/mod_proxy_fdpass.html +share/httpd/manual/mod/mod_proxy_fdpass.html.en +share/httpd/manual/mod/mod_proxy_ftp.html +share/httpd/manual/mod/mod_proxy_ftp.html.en +share/httpd/manual/mod/mod_proxy_html.html +share/httpd/manual/mod/mod_proxy_html.html.en +share/httpd/manual/mod/mod_proxy_http.html +share/httpd/manual/mod/mod_proxy_http.html.en +share/httpd/manual/mod/mod_proxy_http.html.fr +share/httpd/manual/mod/mod_proxy_scgi.html +share/httpd/manual/mod/mod_proxy_scgi.html.en +share/httpd/manual/mod/mod_ratelimit.html +share/httpd/manual/mod/mod_ratelimit.html.en +share/httpd/manual/mod/mod_reflector.html +share/httpd/manual/mod/mod_reflector.html.en +share/httpd/manual/mod/mod_remoteip.html +share/httpd/manual/mod/mod_remoteip.html.en +share/httpd/manual/mod/mod_remoteip.html.fr +share/httpd/manual/mod/mod_reqtimeout.html +share/httpd/manual/mod/mod_reqtimeout.html.en +share/httpd/manual/mod/mod_request.html +share/httpd/manual/mod/mod_request.html.en +share/httpd/manual/mod/mod_request.html.tr.utf8 +share/httpd/manual/mod/mod_rewrite.html +share/httpd/manual/mod/mod_rewrite.html.en +share/httpd/manual/mod/mod_rewrite.html.fr +share/httpd/manual/mod/mod_sed.html +share/httpd/manual/mod/mod_sed.html.en +share/httpd/manual/mod/mod_sed.html.fr +share/httpd/manual/mod/mod_session.html +share/httpd/manual/mod/mod_session.html.en +share/httpd/manual/mod/mod_session_cookie.html +share/httpd/manual/mod/mod_session_cookie.html.en +share/httpd/manual/mod/mod_session_crypto.html +share/httpd/manual/mod/mod_session_crypto.html.en +share/httpd/manual/mod/mod_session_dbd.html +share/httpd/manual/mod/mod_session_dbd.html.en +share/httpd/manual/mod/mod_setenvif.html +share/httpd/manual/mod/mod_setenvif.html.en +share/httpd/manual/mod/mod_setenvif.html.fr +share/httpd/manual/mod/mod_setenvif.html.ja.utf8 +share/httpd/manual/mod/mod_setenvif.html.ko.euc-kr +share/httpd/manual/mod/mod_setenvif.html.tr.utf8 +share/httpd/manual/mod/mod_slotmem_plain.html +share/httpd/manual/mod/mod_slotmem_plain.html.en +share/httpd/manual/mod/mod_slotmem_shm.html +share/httpd/manual/mod/mod_slotmem_shm.html.en +share/httpd/manual/mod/mod_so.html +share/httpd/manual/mod/mod_so.html.en +share/httpd/manual/mod/mod_so.html.fr +share/httpd/manual/mod/mod_so.html.ja.utf8 +share/httpd/manual/mod/mod_so.html.ko.euc-kr +share/httpd/manual/mod/mod_so.html.tr.utf8 +share/httpd/manual/mod/mod_socache_dbm.html +share/httpd/manual/mod/mod_socache_dbm.html.en +share/httpd/manual/mod/mod_socache_dc.html +share/httpd/manual/mod/mod_socache_dc.html.en +share/httpd/manual/mod/mod_socache_memcache.html +share/httpd/manual/mod/mod_socache_memcache.html.en +share/httpd/manual/mod/mod_socache_shmcb.html +share/httpd/manual/mod/mod_socache_shmcb.html.en +share/httpd/manual/mod/mod_speling.html +share/httpd/manual/mod/mod_speling.html.en +share/httpd/manual/mod/mod_speling.html.ja.utf8 +share/httpd/manual/mod/mod_speling.html.ko.euc-kr +share/httpd/manual/mod/mod_ssl.html +share/httpd/manual/mod/mod_ssl.html.en +share/httpd/manual/mod/mod_status.html +share/httpd/manual/mod/mod_status.html.en +share/httpd/manual/mod/mod_status.html.fr +share/httpd/manual/mod/mod_status.html.ja.utf8 +share/httpd/manual/mod/mod_status.html.ko.euc-kr +share/httpd/manual/mod/mod_status.html.tr.utf8 +share/httpd/manual/mod/mod_substitute.html +share/httpd/manual/mod/mod_substitute.html.en +share/httpd/manual/mod/mod_suexec.html +share/httpd/manual/mod/mod_suexec.html.en +share/httpd/manual/mod/mod_suexec.html.ja.utf8 +share/httpd/manual/mod/mod_suexec.html.ko.euc-kr +share/httpd/manual/mod/mod_suexec.html.tr.utf8 +share/httpd/manual/mod/mod_unique_id.html +share/httpd/manual/mod/mod_unique_id.html.en +share/httpd/manual/mod/mod_unique_id.html.fr +share/httpd/manual/mod/mod_unique_id.html.ja.utf8 +share/httpd/manual/mod/mod_unique_id.html.ko.euc-kr +share/httpd/manual/mod/mod_unixd.html +share/httpd/manual/mod/mod_unixd.html.en +share/httpd/manual/mod/mod_unixd.html.tr.utf8 +share/httpd/manual/mod/mod_userdir.html +share/httpd/manual/mod/mod_userdir.html.en +share/httpd/manual/mod/mod_userdir.html.ja.utf8 +share/httpd/manual/mod/mod_userdir.html.ko.euc-kr +share/httpd/manual/mod/mod_userdir.html.tr.utf8 +share/httpd/manual/mod/mod_usertrack.html +share/httpd/manual/mod/mod_usertrack.html.en +share/httpd/manual/mod/mod_version.html +share/httpd/manual/mod/mod_version.html.en +share/httpd/manual/mod/mod_version.html.ja.utf8 +share/httpd/manual/mod/mod_version.html.ko.euc-kr +share/httpd/manual/mod/mod_vhost_alias.html +share/httpd/manual/mod/mod_vhost_alias.html.en +share/httpd/manual/mod/mod_vhost_alias.html.tr.utf8 +share/httpd/manual/mod/mod_watchdog.html +share/httpd/manual/mod/mod_watchdog.html.en +share/httpd/manual/mod/mod_xml2enc.html +share/httpd/manual/mod/mod_xml2enc.html.en +share/httpd/manual/mod/module-dict.html +share/httpd/manual/mod/module-dict.html.en +share/httpd/manual/mod/module-dict.html.ja.utf8 +share/httpd/manual/mod/module-dict.html.ko.euc-kr +share/httpd/manual/mod/module-dict.html.tr.utf8 +share/httpd/manual/mod/mpm_common.html +share/httpd/manual/mod/mpm_common.html.de +share/httpd/manual/mod/mpm_common.html.en +share/httpd/manual/mod/mpm_common.html.ja.utf8 +share/httpd/manual/mod/mpm_common.html.tr.utf8 +share/httpd/manual/mod/mpm_netware.html +share/httpd/manual/mod/mpm_netware.html.en +share/httpd/manual/mod/mpm_winnt.html +share/httpd/manual/mod/mpm_winnt.html.de +share/httpd/manual/mod/mpm_winnt.html.en +share/httpd/manual/mod/mpm_winnt.html.ja.utf8 +share/httpd/manual/mod/mpmt_os2.html +share/httpd/manual/mod/mpmt_os2.html.en +share/httpd/manual/mod/prefork.html +share/httpd/manual/mod/prefork.html.de +share/httpd/manual/mod/prefork.html.en +share/httpd/manual/mod/prefork.html.ja.utf8 +share/httpd/manual/mod/prefork.html.tr.utf8 +share/httpd/manual/mod/quickreference.html +share/httpd/manual/mod/quickreference.html.de +share/httpd/manual/mod/quickreference.html.en +share/httpd/manual/mod/quickreference.html.es +share/httpd/manual/mod/quickreference.html.ja.utf8 +share/httpd/manual/mod/quickreference.html.ko.euc-kr +share/httpd/manual/mod/quickreference.html.tr.utf8 +share/httpd/manual/mod/quickreference.html.zh-cn +share/httpd/manual/mod/worker.html +share/httpd/manual/mod/worker.html.de +share/httpd/manual/mod/worker.html.en +share/httpd/manual/mod/worker.html.ja.utf8 +share/httpd/manual/mod/worker.html.tr.utf8 +share/httpd/manual/mpm.html +share/httpd/manual/mpm.html.de +share/httpd/manual/mpm.html.en +share/httpd/manual/mpm.html.es +share/httpd/manual/mpm.html.fr +share/httpd/manual/mpm.html.ja.utf8 +share/httpd/manual/mpm.html.ko.euc-kr +share/httpd/manual/mpm.html.tr.utf8 +share/httpd/manual/mpm.html.zh-cn +share/httpd/manual/new_features_2_0.html +share/httpd/manual/new_features_2_0.html.de +share/httpd/manual/new_features_2_0.html.en +share/httpd/manual/new_features_2_0.html.fr +share/httpd/manual/new_features_2_0.html.ja.utf8 +share/httpd/manual/new_features_2_0.html.ko.euc-kr +share/httpd/manual/new_features_2_0.html.pt-br +share/httpd/manual/new_features_2_0.html.ru.koi8-r +share/httpd/manual/new_features_2_0.html.tr.utf8 +share/httpd/manual/new_features_2_2.html +share/httpd/manual/new_features_2_2.html.en +share/httpd/manual/new_features_2_2.html.fr +share/httpd/manual/new_features_2_2.html.ko.euc-kr +share/httpd/manual/new_features_2_2.html.pt-br +share/httpd/manual/new_features_2_2.html.tr.utf8 +share/httpd/manual/new_features_2_4.html +share/httpd/manual/new_features_2_4.html.en +share/httpd/manual/new_features_2_4.html.fr +share/httpd/manual/new_features_2_4.html.tr.utf8 +share/httpd/manual/platform/ebcdic.html +share/httpd/manual/platform/ebcdic.html.en +share/httpd/manual/platform/ebcdic.html.ko.euc-kr +share/httpd/manual/platform/index.html +share/httpd/manual/platform/index.html.en +share/httpd/manual/platform/index.html.ko.euc-kr +share/httpd/manual/platform/index.html.zh-cn +share/httpd/manual/platform/netware.html +share/httpd/manual/platform/netware.html.en +share/httpd/manual/platform/netware.html.ko.euc-kr +share/httpd/manual/platform/perf-hp.html +share/httpd/manual/platform/perf-hp.html.en +share/httpd/manual/platform/perf-hp.html.ko.euc-kr +share/httpd/manual/platform/rpm.html +share/httpd/manual/platform/rpm.html.en +share/httpd/manual/platform/win_compiling.html +share/httpd/manual/platform/win_compiling.html.en +share/httpd/manual/platform/win_compiling.html.ko.euc-kr +share/httpd/manual/platform/windows.html +share/httpd/manual/platform/windows.html.en +share/httpd/manual/platform/windows.html.ko.euc-kr +share/httpd/manual/programs/ab.html +share/httpd/manual/programs/ab.html.en +share/httpd/manual/programs/ab.html.ko.euc-kr +share/httpd/manual/programs/ab.html.tr.utf8 +share/httpd/manual/programs/apachectl.html +share/httpd/manual/programs/apachectl.html.en +share/httpd/manual/programs/apachectl.html.ko.euc-kr +share/httpd/manual/programs/apachectl.html.tr.utf8 +share/httpd/manual/programs/apxs.html +share/httpd/manual/programs/apxs.html.en +share/httpd/manual/programs/apxs.html.ko.euc-kr +share/httpd/manual/programs/apxs.html.tr.utf8 +share/httpd/manual/programs/configure.html +share/httpd/manual/programs/configure.html.en +share/httpd/manual/programs/configure.html.ko.euc-kr +share/httpd/manual/programs/configure.html.tr.utf8 +share/httpd/manual/programs/dbmmanage.html +share/httpd/manual/programs/dbmmanage.html.en +share/httpd/manual/programs/dbmmanage.html.ko.euc-kr +share/httpd/manual/programs/dbmmanage.html.tr.utf8 +share/httpd/manual/programs/fcgistarter.html +share/httpd/manual/programs/fcgistarter.html.en +share/httpd/manual/programs/fcgistarter.html.tr.utf8 +share/httpd/manual/programs/htcacheclean.html +share/httpd/manual/programs/htcacheclean.html.en +share/httpd/manual/programs/htcacheclean.html.ko.euc-kr +share/httpd/manual/programs/htcacheclean.html.tr.utf8 +share/httpd/manual/programs/htdbm.html +share/httpd/manual/programs/htdbm.html.en +share/httpd/manual/programs/htdbm.html.tr.utf8 +share/httpd/manual/programs/htdigest.html +share/httpd/manual/programs/htdigest.html.en +share/httpd/manual/programs/htdigest.html.ko.euc-kr +share/httpd/manual/programs/htdigest.html.tr.utf8 +share/httpd/manual/programs/htpasswd.html +share/httpd/manual/programs/htpasswd.html.en +share/httpd/manual/programs/htpasswd.html.ko.euc-kr +share/httpd/manual/programs/htpasswd.html.tr.utf8 +share/httpd/manual/programs/httpd.html +share/httpd/manual/programs/httpd.html.en +share/httpd/manual/programs/httpd.html.ko.euc-kr +share/httpd/manual/programs/httpd.html.tr.utf8 +share/httpd/manual/programs/httxt2dbm.html +share/httpd/manual/programs/httxt2dbm.html.en +share/httpd/manual/programs/httxt2dbm.html.tr.utf8 +share/httpd/manual/programs/index.html +share/httpd/manual/programs/index.html.en +share/httpd/manual/programs/index.html.es +share/httpd/manual/programs/index.html.ko.euc-kr +share/httpd/manual/programs/index.html.tr.utf8 +share/httpd/manual/programs/index.html.zh-cn +share/httpd/manual/programs/logresolve.html +share/httpd/manual/programs/logresolve.html.en +share/httpd/manual/programs/logresolve.html.ko.euc-kr +share/httpd/manual/programs/logresolve.html.tr.utf8 +share/httpd/manual/programs/other.html +share/httpd/manual/programs/other.html.en +share/httpd/manual/programs/other.html.ko.euc-kr +share/httpd/manual/programs/other.html.tr.utf8 +share/httpd/manual/programs/rotatelogs.html +share/httpd/manual/programs/rotatelogs.html.en +share/httpd/manual/programs/rotatelogs.html.ko.euc-kr +share/httpd/manual/programs/rotatelogs.html.tr.utf8 +share/httpd/manual/programs/suexec.html +share/httpd/manual/programs/suexec.html.en +share/httpd/manual/programs/suexec.html.ko.euc-kr +share/httpd/manual/programs/suexec.html.tr.utf8 +share/httpd/manual/rewrite/access.html +share/httpd/manual/rewrite/access.html.en +share/httpd/manual/rewrite/advanced.html +share/httpd/manual/rewrite/advanced.html.en +share/httpd/manual/rewrite/avoid.html +share/httpd/manual/rewrite/avoid.html.en +share/httpd/manual/rewrite/flags.html +share/httpd/manual/rewrite/flags.html.en +share/httpd/manual/rewrite/flags.html.fr +share/httpd/manual/rewrite/htaccess.html +share/httpd/manual/rewrite/htaccess.html.en +share/httpd/manual/rewrite/index.html +share/httpd/manual/rewrite/index.html.en +share/httpd/manual/rewrite/index.html.fr +share/httpd/manual/rewrite/index.html.tr.utf8 +share/httpd/manual/rewrite/index.html.zh-cn +share/httpd/manual/rewrite/intro.html +share/httpd/manual/rewrite/intro.html.en +share/httpd/manual/rewrite/intro.html.fr +share/httpd/manual/rewrite/proxy.html +share/httpd/manual/rewrite/proxy.html.en +share/httpd/manual/rewrite/remapping.html +share/httpd/manual/rewrite/remapping.html.en +share/httpd/manual/rewrite/rewrite_guide.html.fr +share/httpd/manual/rewrite/rewrite_guide_advanced.html.fr +share/httpd/manual/rewrite/rewritemap.html +share/httpd/manual/rewrite/rewritemap.html.en +share/httpd/manual/rewrite/tech.html +share/httpd/manual/rewrite/tech.html.en +share/httpd/manual/rewrite/tech.html.fr +share/httpd/manual/rewrite/vhosts.html +share/httpd/manual/rewrite/vhosts.html.en +share/httpd/manual/sections.html +share/httpd/manual/sections.html.en +share/httpd/manual/sections.html.fr +share/httpd/manual/sections.html.ja.utf8 +share/httpd/manual/sections.html.ko.euc-kr +share/httpd/manual/sections.html.tr.utf8 +share/httpd/manual/server-wide.html +share/httpd/manual/server-wide.html.en +share/httpd/manual/server-wide.html.fr +share/httpd/manual/server-wide.html.ja.utf8 +share/httpd/manual/server-wide.html.ko.euc-kr +share/httpd/manual/server-wide.html.tr.utf8 +share/httpd/manual/sitemap.html +share/httpd/manual/sitemap.html.de +share/httpd/manual/sitemap.html.en +share/httpd/manual/sitemap.html.es +share/httpd/manual/sitemap.html.fr +share/httpd/manual/sitemap.html.ja.utf8 +share/httpd/manual/sitemap.html.ko.euc-kr +share/httpd/manual/sitemap.html.tr.utf8 +share/httpd/manual/sitemap.html.zh-cn +share/httpd/manual/socache.html +share/httpd/manual/socache.html.en +share/httpd/manual/ssl/index.html +share/httpd/manual/ssl/index.html.en +share/httpd/manual/ssl/index.html.fr +share/httpd/manual/ssl/index.html.ja.utf8 +share/httpd/manual/ssl/index.html.tr.utf8 +share/httpd/manual/ssl/index.html.zh-cn +share/httpd/manual/ssl/ssl_compat.html +share/httpd/manual/ssl/ssl_compat.html.en +share/httpd/manual/ssl/ssl_compat.html.fr +share/httpd/manual/ssl/ssl_faq.html +share/httpd/manual/ssl/ssl_faq.html.en +share/httpd/manual/ssl/ssl_faq.html.fr +share/httpd/manual/ssl/ssl_howto.html +share/httpd/manual/ssl/ssl_howto.html.en +share/httpd/manual/ssl/ssl_howto.html.fr +share/httpd/manual/ssl/ssl_intro.html +share/httpd/manual/ssl/ssl_intro.html.en +share/httpd/manual/ssl/ssl_intro.html.fr +share/httpd/manual/ssl/ssl_intro.html.ja.utf8 +share/httpd/manual/stopping.html +share/httpd/manual/stopping.html.de +share/httpd/manual/stopping.html.en +share/httpd/manual/stopping.html.es +share/httpd/manual/stopping.html.fr +share/httpd/manual/stopping.html.ja.utf8 +share/httpd/manual/stopping.html.ko.euc-kr +share/httpd/manual/stopping.html.tr.utf8 +share/httpd/manual/style/build.properties +share/httpd/manual/style/common.dtd +share/httpd/manual/style/css/manual-chm.css +share/httpd/manual/style/css/manual-loose-100pc.css +share/httpd/manual/style/css/manual-print.css +share/httpd/manual/style/css/manual-zip-100pc.css +share/httpd/manual/style/css/manual-zip.css +share/httpd/manual/style/css/manual.css +share/httpd/manual/style/faq.dtd +share/httpd/manual/style/lang.dtd +share/httpd/manual/style/latex/atbeginend.sty +share/httpd/manual/style/manualpage.dtd +share/httpd/manual/style/modulesynopsis.dtd +share/httpd/manual/style/sitemap.dtd +share/httpd/manual/style/version.ent +share/httpd/manual/suexec.html +share/httpd/manual/suexec.html.en +share/httpd/manual/suexec.html.fr +share/httpd/manual/suexec.html.ja.utf8 +share/httpd/manual/suexec.html.ko.euc-kr +share/httpd/manual/suexec.html.tr.utf8 +share/httpd/manual/upgrading.html +share/httpd/manual/upgrading.html.en +share/httpd/manual/upgrading.html.fr +share/httpd/manual/urlmapping.html +share/httpd/manual/urlmapping.html.en +share/httpd/manual/urlmapping.html.fr +share/httpd/manual/urlmapping.html.ja.utf8 +share/httpd/manual/urlmapping.html.ko.euc-kr +share/httpd/manual/urlmapping.html.tr.utf8 +share/httpd/manual/vhosts/details.html +share/httpd/manual/vhosts/details.html.en +share/httpd/manual/vhosts/details.html.fr +share/httpd/manual/vhosts/details.html.ko.euc-kr +share/httpd/manual/vhosts/details.html.tr.utf8 +share/httpd/manual/vhosts/examples.html +share/httpd/manual/vhosts/examples.html.en +share/httpd/manual/vhosts/examples.html.fr +share/httpd/manual/vhosts/examples.html.ja.utf8 +share/httpd/manual/vhosts/examples.html.ko.euc-kr +share/httpd/manual/vhosts/examples.html.tr.utf8 +share/httpd/manual/vhosts/fd-limits.html +share/httpd/manual/vhosts/fd-limits.html.en +share/httpd/manual/vhosts/fd-limits.html.fr +share/httpd/manual/vhosts/fd-limits.html.ja.utf8 +share/httpd/manual/vhosts/fd-limits.html.ko.euc-kr +share/httpd/manual/vhosts/fd-limits.html.tr.utf8 +share/httpd/manual/vhosts/index.html +share/httpd/manual/vhosts/index.html.de +share/httpd/manual/vhosts/index.html.en +share/httpd/manual/vhosts/index.html.fr +share/httpd/manual/vhosts/index.html.ja.utf8 +share/httpd/manual/vhosts/index.html.ko.euc-kr +share/httpd/manual/vhosts/index.html.tr.utf8 +share/httpd/manual/vhosts/index.html.zh-cn +share/httpd/manual/vhosts/ip-based.html +share/httpd/manual/vhosts/ip-based.html.en +share/httpd/manual/vhosts/ip-based.html.fr +share/httpd/manual/vhosts/ip-based.html.ja.utf8 +share/httpd/manual/vhosts/ip-based.html.ko.euc-kr +share/httpd/manual/vhosts/ip-based.html.tr.utf8 +share/httpd/manual/vhosts/mass.html +share/httpd/manual/vhosts/mass.html.en +share/httpd/manual/vhosts/mass.html.fr +share/httpd/manual/vhosts/mass.html.ko.euc-kr +share/httpd/manual/vhosts/mass.html.tr.utf8 +share/httpd/manual/vhosts/name-based.html +share/httpd/manual/vhosts/name-based.html.de +share/httpd/manual/vhosts/name-based.html.en +share/httpd/manual/vhosts/name-based.html.fr +share/httpd/manual/vhosts/name-based.html.ja.utf8 +share/httpd/manual/vhosts/name-based.html.ko.euc-kr +share/httpd/manual/vhosts/name-based.html.tr.utf8 +@pkgdir share/httpd/manual/style/xsl/util +@pkgdir share/httpd/manual/style/lang diff --git a/www/apache24/buildlink3.mk b/www/apache24/buildlink3.mk new file mode 100644 index 00000000000..c23a14585e3 --- /dev/null +++ b/www/apache24/buildlink3.mk @@ -0,0 +1,27 @@ +# $NetBSD: buildlink3.mk,v 1.1.1.1 2012/04/13 18:50:48 ryoon Exp $ + +BUILDLINK_TREE+= apache + +.if !defined(APACHE_BUILDLINK3_MK) +APACHE_BUILDLINK3_MK:= + +BUILDLINK_API_DEPENDS.apache+= apache>=2.4.1 +BUILDLINK_ABI_DEPENDS.apache+= apache>=2.4.1 +BUILDLINK_PKGSRCDIR.apache?= ../../www/apache24 +BUILDLINK_DEPMETHOD.apache?= build +.if defined(APACHE_MODULE) +BUILDLINK_DEPMETHOD.apache+= full +.endif +USE_TOOLS+= perl # for "apxs" +CONFIGURE_ENV+= APR_LIBTOOL=${LIBTOOL:Q} # make apxs use the libtool we specify +MAKE_ENV+= APR_LIBTOOL=${LIBTOOL:Q} +APXS?= ${BUILDLINK_PREFIX.apache}/bin/apxs +.if defined(GNU_CONFIGURE) +CONFIGURE_ARGS+= --with-apxs2=${APXS:Q} +.endif + +.include "../../devel/apr/buildlink3.mk" +.include "../../devel/apr-util/buildlink3.mk" +.endif # APACHE_BUILDLINK3_MK + +BUILDLINK_TREE+= -apache diff --git a/www/apache24/distinfo b/www/apache24/distinfo new file mode 100644 index 00000000000..3eed0c9db9c --- /dev/null +++ b/www/apache24/distinfo @@ -0,0 +1,15 @@ +$NetBSD: distinfo,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +SHA1 (httpd-2.4.1.tar.bz2) = 23beffce77529971e09d0fb1e760cadf80afa4e6 +RMD160 (httpd-2.4.1.tar.bz2) = 6d21d828028ce1cff8648fb29c8eb1b75fd96451 +Size (httpd-2.4.1.tar.bz2) = 4101303 bytes +SHA1 (patch-aa) = 2d92b1340aaae40289421f164346348c6d7fe839 +SHA1 (patch-ab) = a3edcc20b7654e0446c7d442cda1510b23e5d324 +SHA1 (patch-ac) = 9f86d845df30316d22bce677a4b176f51007ba0d +SHA1 (patch-ad) = 4c812b94af32e8493e0b17793a2d065003d32cc6 +SHA1 (patch-ae) = 5bd3bf54e792bf8a2916d7e1b49b1702b02c6903 +SHA1 (patch-ag) = 62a40901debb421dac7954362d4934297c54c0c6 +SHA1 (patch-ai) = 867ac81fd14b1bd6af048ec57390d915956e9568 +SHA1 (patch-al) = 02d9ade5aac4270182063d5ad413970c832ee911 +SHA1 (patch-am) = f14b260ffad2c7e8d26e5b614d4aeaf8506e195b +SHA1 (patch-aw) = 43cd64df886853ef7b75b91ed20183f329fcc9df diff --git a/www/apache24/files/apache.sh b/www/apache24/files/apache.sh new file mode 100644 index 00000000000..d6bbd22cbf8 --- /dev/null +++ b/www/apache24/files/apache.sh @@ -0,0 +1,57 @@ +#!@RCD_SCRIPTS_SHELL@ +# +# $NetBSD: apache.sh,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ +# +# PROVIDE: apache +# REQUIRE: DAEMON +# KEYWORD: shutdown +# +# You will need to set some variables in /etc/rc.conf to start Apache: +# +# apache=YES + +name="apache" + +if [ -f /etc/rc.subr ] +then + . /etc/rc.subr + + rcvar=$name + command="@PREFIX@/sbin/httpd" + command_args="-k start" + pidfile="@VARBASE@/run/httpd.pid" + required_files="@PKG_SYSCONFDIR@/httpd.conf" + extra_commands="reload" + reload_cmd="$command -k graceful" + + load_rc_config $name + run_rc_command "$1" +else + ctl_command="@PREFIX@/sbin/apachectl" + + if [ ! -x ${ctl_command} ]; then + return + fi + + case "$1" in + start) + @ECHO@ "Starting ${name}." + ${ctl_command} start + ;; + stop) + @ECHO@ "Stopping ${name}." + ${ctl_command} stop + ;; + reload) + ${ctl_command} graceful + ;; + restart) + "$0" stop + sleep 10 + "$0" start + ;; + *) + ${ctl_command} "$1" + ;; + esac +fi diff --git a/www/apache24/files/mkcert.sh b/www/apache24/files/mkcert.sh new file mode 100644 index 00000000000..6be1c77bc7c --- /dev/null +++ b/www/apache24/files/mkcert.sh @@ -0,0 +1,914 @@ +#!/bin/sh +## +## mkcert.sh -- SSL Certificate Generation Utility +## Copyright (c) 1998-2000 Ralf S. Engelschall, All Rights Reserved. +## + +# parameters +parameters=`getopt a:c:t:k:v $*` +if [ $# = 0 ]; then + cat << EOF +Usage: + mkcert.sh [-t type] [-a algo] [-c crtfile ] [-k keyfile] [-v] + +Options: + -t type Type of certificates to generate. Valid types are: + dummy self-signed Snake Oil cert + test test cert signed by Snake Oil CA + custom custom cert signed by own CA + existing existing cert + + -a algo Signature algorithm for generated certificate. Valid + algorithms are RSA or DSA. + + -c crtfile Path to an existing certificate + + -k keyfile Path to an existing key file + + -v Display the certificate and key, then exit. + +EOF + exit 2 +fi + +set -- $parameters +for param +do + case $param in + -a) algo=$2 ;; + -c) crt=$2 ;; + -t) type=$2 ;; + -k) key=$2 ;; + -v) view=1 ;; + --) break ;; + esac + shift +done + +openssl="openssl" +confdir=@PKG_SYSCONFDIR@ + +# configuration +sslcrtdir="$confdir/ssl.crt" +sslcsrdir="$confdir/ssl.csr" +sslkeydir="$confdir/ssl.key" +sslprmdir="$confdir/ssl.prm" +sslcrldir="$confdir/ssl.crl" + +if [ ! -d "${sslcrtdir}" ]; then + echo "Creating ${sslcrtdir}" + mkdir "${sslcrtdir}" || exit 1 +fi +if [ ! -d "${sslcsrdir}" ]; then + echo "Creating ${sslcsrdir}" + mkdir "${sslcsrdir}" || exit 1 +fi +if [ ! -d "${sslkeydir}" ]; then + echo "Creating ${sslkeydir}" + mkdir "${sslkeydir}" || exit 1 +fi +if [ ! -d "${sslprmdir}" ]; then + echo "Creating ${sslprmdir}" + mkdir "${sslprmdir}" || exit 1 +fi +if [ ! -d "${sslcrldir}" ]; then + echo "Creating ${sslcrldir}" + mkdir "${sslcrldir}" || exit 1 +fi + +# some optional terminal sequences +case $TERM in + xterm|xterm*|vt220|vt220*) + T_MD=`echo dummy | awk '{ printf("%c%c%c%c", 27, 91, 49, 109); }'` + T_ME=`echo dummy | awk '{ printf("%c%c%c", 27, 91, 109); }'` + ;; + vt100|vt100*) + T_MD=`echo dummy | awk '{ printf("%c%c%c%c%c%c", 27, 91, 49, 109, 0, 0); }'` + T_ME=`echo dummy | awk '{ printf("%c%c%c%c%c", 27, 91, 109, 0, 0); }'` + ;; + default) + T_MD='' + T_ME='' + ;; +esac + +# display header +echo "${T_MD}SSL Certificate Generation Utility${T_ME} (mkcert.sh)" +echo "Copyright (c) 1998-2000 Ralf S. Engelschall, All Rights Reserved." + +# on request view certificates only +if [ ".$view" != . ]; then + if [ -f "$sslcrtdir/ca.crt" -a -f "$sslkeydir/ca.key" ]; then + echo "" + echo "${T_MD}CA X.509 Certificate${T_ME} [ca.crt]" + echo "______________________________________________________________________" + $openssl x509 -noout -text -in $sslcrtdir/ca.crt + echo "" + if [ ".`$openssl x509 -noout -text -in $sslcrtdir/ca.crt | grep 'Signature Algorithm' | grep -i RSA`" != . ]; then + echo "${T_MD}CA RSA Private Key${T_ME} [ca.key]" + echo "______________________________________________________________________" + $openssl rsa -noout -text -in $sslkeydir/ca.key + else + echo "${T_MD}CA DSA Private Key${T_ME} [ca.key]" + echo "______________________________________________________________________" + $openssl dsa -noout -text -in $sslkeydir/ca.key + fi + fi + if [ -f "$sslcrtdir/server.crt" -a -f "$sslkeydir/server.key" ]; then + echo "" + echo "${T_MD}Server X.509 Certificate${T_ME} [server.crt]" + echo "______________________________________________________________________" + $openssl x509 -noout -text -in $sslcrtdir/server.crt + echo "" + if [ ".`$openssl x509 -noout -text -in $sslcrtdir/server.crt | grep 'Signature Algorithm' | grep -i RSA`" != . ]; then + echo "${T_MD}Server RSA Private Key${T_ME} [server.key]" + echo "______________________________________________________________________" + $openssl rsa -noout -text -in $sslkeydir/server.key + else + echo "${T_MD}Server DSA Private Key${T_ME} [server.key]" + echo "______________________________________________________________________" + $openssl dsa -noout -text -in $sslkeydir/server.key + fi + fi + exit 0 +fi + +# find some random files +# We will always generate a /tmp/randfile using /dev/urandom +# before passing $randfile to openssl. +randfiles='/tmp/randfile' +for file in /var/log/messages /var/adm/messages /var/log/system.log /var/wtmp \ + /kernel /kernel/genunix /vmunix /vmlinuz /mach /netbsd \ + /etc/hosts /etc/group /etc/resolv.conf /bin/ls; do + if [ -r $file ]; then + if [ ".$randfiles" = . ]; then + randfiles="$file" + else + randfiles="${randfiles}:$file" + fi + fi +done + +# initialize random file +if [ -f $HOME/.rnd ]; then + RANDFILE="$HOME/.rnd" +else + RANDFILE="/tmp/.mkcert.rnd" + (ps; date) >$RANDFILE +fi +export RANDFILE + +# canonicalize parameters +case "x$type" in + x ) type=test ;; +esac +case "x$algo" in + xRSA|xrsa ) + algo=RSA + ;; + xDSA|xdsa ) + algo=DSA + ;; + x ) + algo=choose + ;; + * ) echo "Unknown algorithm \'$algo' (use RSA or DSA!)" 1>&2 + exit 1 + ;; +esac + +# processing +case $type in + + dummy) + echo "" + echo "${T_MD}Generating self-signed Snake Oil certificate [DUMMY]${T_ME}" + echo "______________________________________________________________________" + echo "" + if [ ".$algo" = .choose ]; then + algo=RSA + fi + if [ ".$algo" = .RSA ]; then + cp $sslcrtdir/snakeoil-rsa.crt $sslcrtdir/server.crt + (umask 077; cp $sslkeydir/snakeoil-rsa.key $sslkeydir/server.key) + else + cp $sslcrtdir/snakeoil-dsa.crt $sslcrtdir/server.crt + (umask 077; cp $sslkeydir/snakeoil-dsa.key $sslkeydir/server.key) + fi + echo "${T_MD}RESULT: Server Certification Files${T_ME}" + echo "" + echo "o ${T_MD}$confdir/ssl.key/server.key${T_ME}" + echo " The PEM-encoded $algo private key file which you configure" + echo " with the 'SSLCertificateKeyFile' directive (automatically done" + echo " when you install via APACI). ${T_MD}KEEP THIS FILE PRIVATE!${T_ME}" + echo "" + echo "o ${T_MD}$confdir/ssl.crt/server.crt${T_ME}" + echo " The PEM-encoded X.509 certificate file which you configure" + echo " with the 'SSLCertificateFile' directive (automatically done" + echo " when you install via APACI)." + echo "" + echo "WARNING: Do not use this for real-life/production systems" + echo "" + ;; + + test) + echo "" + echo "${T_MD}Generating test certificate signed by Snake Oil CA [TEST]${T_ME}" + echo "WARNING: Do not use this for real-life/production systems" + if [ ".$algo" = .choose ]; then + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 0: Decide the signature algorithm used for certificate${T_ME}" + echo "The generated X.509 CA certificate can contain either" + echo "RSA or DSA based ingredients. Select the one you want to use." + def1=R def2=r def=RSA + prompt="Signature Algorithm ((R)SA or (D)SA) [$def1]:" + while [ 1 ]; do + echo dummy | awk '{ printf("%s", prompt); }' "prompt=$prompt" + read algo + if [ ".$algo" = ".$def1" -o ".$algo" = ".$def2" -o ".$algo" = . ]; then + algo=$def + break + elif [ ".$algo" = ".R" -o ".$algo" = ".r" ]; then + algo=RSA + break + elif [ ".$algo" = ".D" -o ".$algo" = ".d" ]; then + algo=DSA + break + else + echo "mkcert.sh:Warning: Invalid selection" 1>&2 + fi + done + fi + if [ ".$algo" = ".DSA" ]; then + echo "" + echo "${T_MD}WARNING!${T_ME} You're generating a DSA based certificate/key pair." + echo " This implies that RSA based ciphers won't be available later," + echo " which for your web server currently still means that mostly all" + echo " popular web browsers cannot connect to it. At least not until" + echo " you also generate an additional RSA based certificate/key pair" + echo " and configure them in parallel." + fi + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 1: Generating $algo private key (1024 bit) [server.key]${T_ME}" + (umask 077; head -500 /dev/urandom > randfile) + if [ ".$algo" = .RSA ]; then + if [ ".$randfiles" != . ]; then + $openssl genrsa -rand $randfiles -out $sslkeydir/server.key 1024 + else + $openssl genrsa -out $sslkeydir/server.key 1024 + fi + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to generate RSA private key" 1>&2 + exit 1 + fi + else + echo "Generating DSA private key via SnakeOil CA DSA parameters" + if [ ".$randfiles" != . ]; then + (umask 077 + $openssl gendsa -rand $randfiles \ + -out $sslkeydir/server.key \ + $sslprmdir/snakeoil-ca-dsa.prm) + else + (umask 077 + $openssl gendsa -out $sslkeydir/server.key \ + $sslprmdir/snakeoil-ca-dsa.prm) + fi + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to generate DSA private key" 1>&2 + exit 1 + fi + fi + rm -f randfile + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 2: Generating X.509 certificate signing request [server.csr]${T_ME}" + cat >/tmp/.mkcert.cfg <&2 + exit 1 + fi + rm -f /tmp/.mkcert.cfg + prompt="8. Certificate Validity (days) [365]:" + echo dummy | awk '{ printf("%s", prompt); }' "prompt=$prompt" + read days + if [ ".$days" = . ]; then + days=365 + fi + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 3: Generating X.509 certificate signed by Snake Oil CA [server.crt]${T_ME}" + echo dummy | awk '{ printf("%s", prompt); }' "prompt=Certificate Version (1 or 3) [3]:" + read certversion + extfile="" + if [ ".$certversion" = .3 -o ".$certversion" = . ]; then + extfile="-extfile /tmp/.mkcert.cfg" + cat >/tmp/.mkcert.cfg </tmp/.mkcert.serial + fi + if [ ".$algo" = .RSA ]; then + $openssl x509 $extfile \ + -days $days \ + -CAserial /tmp/.mkcert.serial \ + -CA $sslcrtdir/snakeoil-ca-rsa.crt \ + -CAkey $sslkeydir/snakeoil-ca-rsa.key \ + -in $sslcsrdir/server.csr -req \ + -out $sslcrtdir/server.crt + else + $openssl x509 $extfile \ + -days $days \ + -CAserial /tmp/.mkcert.serial \ + -CA $sslcrtdir/snakeoil-ca-dsa.crt \ + -CAkey $sslkeydir/snakeoil-ca-dsa.key \ + -in $sslcsrdir/server.csr -req \ + -out $sslcrtdir/server.crt + fi + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to generate X.509 certificate" 1>&2 + exit 1 + fi + rm -f /tmp/.mkcert.cfg + echo "Verify: matching certificate & key modulus" + modcrt=`$openssl x509 -noout -modulus -in $sslcrtdir/server.crt | sed -e 's;.*Modulus=;;'` + if [ ".$algo" = .RSA ]; then + modkey=`$openssl rsa -noout -modulus -in $sslkeydir/server.key | sed -e 's;.*Modulus=;;'` + else + modkey=`$openssl dsa -noout -modulus -in $sslkeydir/server.key | sed -e 's;.*Key=;;'` + fi + if [ ".$modcrt" != ".$modkey" ]; then + echo "mkcert.sh:Error: Failed to verify modulus on resulting X.509 certificate" 1>&2 + exit 1 + fi + echo "Verify: matching certificate signature" + if [ ".$algo" = .RSA ]; then + $openssl verify -CAfile $sslcrtdir/snakeoil-ca-rsa.crt $sslcrtdir/server.crt + else + $openssl verify -CAfile $sslcrtdir/snakeoil-ca-dsa.crt $sslcrtdir/server.crt + fi + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to verify signature on resulting X.509 certificate" 1>&2 + exit 1 + fi + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 4: Enrypting $algo private key with a pass phrase for security [server.key]${T_ME}" + echo "The contents of the server.key file (the generated private key) has to be" + echo "kept secret. So we strongly recommend you to encrypt the server.key file" + echo "with a Triple-DES cipher and a Pass Phrase." + while [ 1 ]; do + echo dummy | awk '{ printf("Encrypt the private key now? [Y/n]: "); }' + read rc + if [ ".$rc" = .n -o ".$rc" = .N ]; then + rc="n" + break + fi + if [ ".$rc" = .y -o ".$rc" = .Y -o ".$rc" = . ]; then + rc="y" + break + fi + done + if [ ".$rc" = .y ]; then + if [ ".$algo" = .RSA ]; then + (umask 077 + $openssl rsa -des3 \ + -in $sslkeydir/server.key \ + -out $sslkeydir/server.key.crypt) + else + (umask 077 + $openssl dsa -des3 \ + -in $sslkeydir/server.key \ + -out $sslkeydir/server.key.crypt) + fi + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to encrypt $algo private key" 1>&2 + exit 1 + fi + (umask 077; cp $sslkeydir/server.key.crypt $sslkeydir/server.key) + rm -f $sslkeydir/server.key.crypt + echo "Fine, you're using an encrypted $algo private key." + else + echo "Warning, you're using an unencrypted $algo private key." + echo "Please notice this fact and do this on your own risk." + fi + echo "______________________________________________________________________" + echo "" + echo "${T_MD}RESULT: Server Certification Files${T_ME}" + echo "" + echo "o ${T_MD}$confdir/ssl.key/server.key${T_ME}" + echo " The PEM-encoded $algo private key file which you configure" + echo " with the 'SSLCertificateKeyFile' directive (automatically done" + echo " when you install via APACI). ${T_MD}KEEP THIS FILE PRIVATE!${T_ME}" + echo "" + echo "o ${T_MD}$confdir/ssl.crt/server.crt${T_ME}" + echo " The PEM-encoded X.509 certificate file which you configure" + echo " with the 'SSLCertificateFile' directive (automatically done" + echo " when you install via APACI)." + echo "" + echo "o ${T_MD}$confdir/ssl.csr/server.csr${T_ME}" + echo " The PEM-encoded X.509 certificate signing request file which" + echo " you can send to an official Certificate Authority (CA) in order" + echo " to request a real server certificate (signed by this CA instead" + echo " of our demonstration-only Snake Oil CA) which later can replace" + echo " the $confdir/ssl.crt/server.crt file." + echo "" + echo "WARNING: Do not use this for real-life/production systems" + echo "" + ;; + + custom) + echo "" + echo "${T_MD}Generating custom certificate signed by own CA [CUSTOM]${T_ME}" + if [ ".$algo" = .choose ]; then + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 0: Decide the signature algorithm used for certificates${T_ME}" + echo "The generated X.509 certificates can contain either" + echo "RSA or DSA based ingredients. Select the one you want to use." + def1=R def2=r def=RSA + prompt="Signature Algorithm ((R)SA or (D)SA) [$def1]:" + while [ 1 ]; do + echo dummy | awk '{ printf("%s", prompt); }' "prompt=$prompt" + read algo + if [ ".$algo" = ".$def1" -o ".$algo" = ".$def2" -o ".$algo" = . ]; then + algo=$def + break + elif [ ".$algo" = ".R" -o ".$algo" = ".r" ]; then + algo=RSA + break + elif [ ".$algo" = ".D" -o ".$algo" = ".d" ]; then + algo=DSA + break + else + echo "mkcert.sh:Warning: Invalid selection" 1>&2 + fi + done + fi + if [ ".$algo" = ".DSA" ]; then + echo "" + echo "${T_MD}WARNING!${T_ME} You're generating DSA based certificate/key pairs." + echo " This implies that RSA based ciphers won't be available later," + echo " which for your web server currently still means that mostly all" + echo " popular web browsers cannot connect to it. At least not until" + echo " you also generate an additional RSA based certificate/key pair" + echo " and configure them in parallel." + fi + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 1: Generating $algo private key for CA (1024 bit) [ca.key]${T_ME}" + (umask 077; head -500 /dev/urandom > randfile) + if [ ".$algo" = .RSA ]; then + if [ ".$randfiles" != . ]; then + $openssl genrsa -rand $randfiles -out $sslkeydir/ca.key 1024 + else + $openssl genrsa -out $sslkeydir/ca.key 1024 + fi + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to generate RSA private key" 1>&2 + exit 1 + fi + else + if [ ".$randfiles" != . ]; then + $openssl dsaparam -rand $randfiles -out $sslprmdir/ca.prm 1024 + echo "Generating DSA private key:" + (umask 077 + $openssl gendsa -rand $randfiles -out $sslkeydir/ca.key $sslprmdir/ca.prm) + else + $openssl dsaparam -out $sslprmdir/ca.prm 1024 + echo "Generating DSA private key:" + (umask 077 + $openssl gendsa -out $sslkeydir/ca.key $sslprmdir/ca.prm) + fi + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to generate DSA private key" 1>&2 + exit 1 + fi + fi + rm -f randfile + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 2: Generating X.509 certificate signing request for CA [ca.csr]${T_ME}" + cat >/tmp/.mkcert.cfg <&2 + exit 1 + fi + rm -f /tmp/.mkcert.cfg + prompt="8. Certificate Validity (days) [365]:" + echo dummy | awk '{ printf("%s", prompt); }' "prompt=$prompt" + read days + if [ ".$days" = . ]; then + days=365 + fi + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 3: Generating X.509 certificate for CA signed by itself [ca.crt]${T_ME}" + echo dummy | awk '{ printf("%s", prompt); }' "prompt=Certificate Version (1 or 3) [3]:" + read certversion + extfile="" + if [ ".$certversion" = .3 -o ".$certversion" = . ]; then + extfile="-extfile /tmp/.mkcert.cfg" + cat >/tmp/.mkcert.cfg <&2 + exit 1 + fi + rm -f /tmp/.mkcert.cfg + echo "Verify: matching certificate & key modulus" + modcrt=`$openssl x509 -noout -modulus -in $sslcrtdir/ca.crt | sed -e 's;.*Modulus=;;'` + if [ ".$algo" = .RSA ]; then + modkey=`$openssl rsa -noout -modulus -in $sslkeydir/ca.key | sed -e 's;.*Modulus=;;'` + else + modkey=`$openssl dsa -noout -modulus -in $sslkeydir/ca.key | sed -e 's;.*Key=;;'` + fi + if [ ".$modcrt" != ".$modkey" ]; then + echo "mkcert.sh:Error: Failed to verify modulus on resulting X.509 certificate" 1>&2 + exit 1 + fi + echo "Verify: matching certificate signature" + $openssl verify $sslcrtdir/ca.crt + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to verify signature on resulting X.509 certificate" 1>&2 + exit 1 + fi + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 4: Generating $algo private key for SERVER (1024 bit) [server.key]${T_ME}" + (umask 077; head -500 /dev/urandom > randfile) + if [ ".$algo" = .RSA ]; then + if [ ".$randfiles" != . ]; then + $openssl genrsa -rand $randfiles -out $sslkeydir/server.key 1024 + else + $openssl genrsa -out $sslkeydir/server.key 1024 + fi + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to generate RSA private key" 1>&2 + exit 1 + fi + else + if [ ".$randfiles" != . ]; then + (umask 077 + $openssl gendsa -rand $randfiles \ + -out $sslkeydir/server.key $sslprmdir/ca.prm) + else + (umask 077 + $openssl gendsa -out $sslkeydir/server.key $sslprmdir/ca.prm) + fi + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to generate DSA private key" 1>&2 + exit 1 + fi + fi + rm -f randfile + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 5: Generating X.509 certificate signing request for SERVER [server.csr]${T_ME}" + cat >/tmp/.mkcert.cfg <&2 + exit 1 + fi + rm -f /tmp/.mkcert.cfg + prompt="8. Certificate Validity (days) [365]:" + echo dummy | awk '{ printf("%s", prompt); }' "prompt=$prompt" + read days + if [ ".$days" = . ]; then + days=365 + fi + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 6: Generating X.509 certificate signed by own CA [server.crt]${T_ME}" + echo dummy | awk '{ printf("%s", prompt); }' "prompt=Certificate Version (1 or 3) [3]:" + read certversion + extfile="" + if [ ".$certversion" = .3 -o ".$certversion" = . ]; then + extfile="-extfile /tmp/.mkcert.cfg" + cat >/tmp/.mkcert.cfg </tmp/.mkcert.serial + fi + $openssl x509 $extfile \ + -days $days \ + -CAserial /tmp/.mkcert.serial \ + -CA $sslcrtdir/ca.crt \ + -CAkey $sslkeydir/ca.key \ + -in $sslcsrdir/server.csr -req \ + -out $sslcrtdir/server.crt + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to generate X.509 certificate" 1>&2 + exit 1 + fi + rm -f /tmp/.mkcert.cfg + echo "Verify: matching certificate & key modulus" + modcrt=`$openssl x509 -noout -modulus -in $sslcrtdir/server.crt | sed -e 's;.*Modulus=;;'` + if [ ".$algo" = .RSA ]; then + modkey=`$openssl rsa -noout -modulus -in $sslkeydir/server.key | sed -e 's;.*Modulus=;;'` + else + modkey=`$openssl dsa -noout -modulus -in $sslkeydir/server.key | sed -e 's;.*Key=;;'` + fi + if [ ".$modcrt" != ".$modkey" ]; then + echo "mkcert.sh:Error: Failed to verify modulus on resulting X.509 certificate" 1>&2 + exit 1 + fi + echo "Verify: matching certificate signature" + $openssl verify -CAfile $sslcrtdir/ca.crt $sslcrtdir/server.crt + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to verify signature on resulting X.509 certificate" 1>&2 + exit 1 + fi + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 7: Enrypting $algo private key of CA with a pass phrase for security [ca.key]${T_ME}" + echo "The contents of the ca.key file (the generated private key) has to be" + echo "kept secret. So we strongly recommend you to encrypt the server.key file" + echo "with a Triple-DES cipher and a Pass Phrase." + while [ 1 ]; do + echo dummy | awk '{ printf("Encrypt the private key now? [Y/n]: "); }' + read rc + if [ ".$rc" = .n -o ".$rc" = .N ]; then + rc="n" + break + fi + if [ ".$rc" = .y -o ".$rc" = .Y -o ".$rc" = . ]; then + rc="y" + break + fi + done + if [ ".$rc" = .y ]; then + if [ ".$algo" = .RSA ]; then + (umask 077 + $openssl rsa -des3 \ + -in $sslkeydir/ca.key \ + -out $sslkeydir/ca.key.crypt) + else + (umask 077 + $openssl dsa -des3 \ + -in $sslkeydir/ca.key \ + -out $sslkeydir/ca.key.crypt) + fi + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to encrypt $algo private key" 1>&2 + exit 1 + fi + (umask 077; cp $sslkeydir/ca.key.crypt $sslkeydir/ca.key) + rm -f $sslkeydir/ca.key.crypt + echo "Fine, you're using an encrypted private key." + else + echo "Warning, you're using an unencrypted private key." + echo "Please notice this fact and do this on your own risk." + fi + echo "______________________________________________________________________" + echo "" + echo "${T_MD}STEP 8: Enrypting $algo private key of SERVER with a pass phrase for security [server.key]${T_ME}" + echo "The contents of the server.key file (the generated private key) has to be" + echo "kept secret. So we strongly recommend you to encrypt the server.key file" + echo "with a Triple-DES cipher and a Pass Phrase." + while [ 1 ]; do + echo dummy | awk '{ printf("Encrypt the private key now? [Y/n]: "); }' + read rc + if [ ".$rc" = .n -o ".$rc" = .N ]; then + rc="n" + break + fi + if [ ".$rc" = .y -o ".$rc" = .Y -o ".$rc" = . ]; then + rc="y" + break + fi + done + if [ ".$rc" = .y ]; then + if [ ".$algo" = .RSA ]; then + (umask 077 + $openssl rsa -des3 \ + -in $sslkeydir/server.key \ + -out $sslkeydir/server.key.crypt) + else + (umask 077 + $openssl dsa -des3 \ + -in $sslkeydir/server.key \ + -out $sslkeydir/server.key.crypt) + fi + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to encrypt $algo private key" 1>&2 + exit 1 + fi + (umask 077; cp $sslkeydir/server.key.crypt $sslkeydir/server.key) + rm -f $sslkeydir/server.key.crypt + echo "Fine, you're using an encrypted $algo private key." + else + echo "Warning, you're using an unencrypted $algo private key." + echo "Please notice this fact and do this on your own risk." + fi + echo "______________________________________________________________________" + echo "" + echo "${T_MD}RESULT: CA and Server Certification Files${T_ME}" + echo "" + echo "o ${T_MD}$confdir/ssl.key/ca.key${T_ME}" + echo " The PEM-encoded $algo private key file of the CA which you can" + echo " use to sign other servers or clients. ${T_MD}KEEP THIS FILE PRIVATE!${T_ME}" + echo "" + echo "o ${T_MD}$confdir/ssl.crt/ca.crt${T_ME}" + echo " The PEM-encoded X.509 certificate file of the CA which you use to" + echo " sign other servers or clients. When you sign clients with it (for" + echo " SSL client authentication) you can configure this file with the" + echo " 'SSLCACertificateFile' directive." + echo "" + echo "o ${T_MD}$confdir/ssl.key/server.key${T_ME}" + echo " The PEM-encoded $algo private key file of the server which you configure" + echo " with the 'SSLCertificateKeyFile' directive (automatically done" + echo " when you install via APACI). ${T_MD}KEEP THIS FILE PRIVATE!${T_ME}" + echo "" + echo "o ${T_MD}$confdir/ssl.crt/server.crt${T_ME}" + echo " The PEM-encoded X.509 certificate file of the server which you configure" + echo " with the 'SSLCertificateFile' directive (automatically done" + echo " when you install via APACI)." + echo "" + echo "o ${T_MD}$confdir/ssl.csr/server.csr${T_ME}" + echo " The PEM-encoded X.509 certificate signing request of the server file which" + echo " you can send to an official Certificate Authority (CA) in order" + echo " to request a real server certificate (signed by this CA instead" + echo " of our own CA) which later can replace the $confdir/ssl.crt/server.crt" + echo " file." + echo "" + echo "Congratulations that you establish your server with real certificates." + echo "" + ;; + + existing) + echo "" + echo "${T_MD}Using existing custom certificate [EXISTING]${T_ME}" + echo "______________________________________________________________________" + echo "" + if [ ".$crt" = . ]; then + echo "mkcert.sh: No certificate file given" 1>&2 + exit 1 + fi + if [ ! -f "$crt" ]; then + echo "mkcert.sh: Cannot find certificate file: $crt" 1>&2 + exit 1 + fi + if [ $crt -ef $sslcrtdir/server.crt ]; then + mv -f $crt $crt.backup + crt="$crt.backup" + fi + if [ ".$key" != . ]; then + if [ ! -f "$key" ]; then + echo "mkcert.sh: Cannot find private key file: $key" 1>&2 + exit 1 + fi + if [ $key -ef $sslkeydir/server.key ]; then + mv -f $key $key.backup + key="$key.backup" + fi + cp $crt $sslcrtdir/server.crt + (umask 077; cp $key $sslkeydir/server.key) + else + if [ $crt -ef $sslcrtdir/server.crt ]; then + mv -f $crt $crt.backup + crt="$crt.backup" + fi + key=$crt + umask 077 + touch $sslkeydir/server.key + sed -e '/-----BEGIN CERTIFICATE/,/-----END CERTIFICATE/p' -e '/.*/d' \ + <$crt >$sslcrtdir/server.crt + sed -e '/-----BEGIN ... PRIVATE KEY/,/-----END ... PRIVATE KEY/p' -e '/.*/d' \ + <$key >$sslkeydir/server.key + fi + $openssl x509 -noout -in $sslcrtdir/server.crt + if [ $? -ne 0 ]; then + echo "mkcert.sh:Error: Failed to check certificate contents: $crt" 1>&2 + exit 1 + fi + if [ ".`grep 'PRIVATE KEY' $sslkeydir/server.key | grep RSA`" != . ]; then + algo=RSA + else + algo=DSA + fi + echo "${T_MD}RESULT: Server Certification Files${T_ME}" + echo "" + echo "o ${T_MD}$confdir/ssl.key/server.key${T_ME}" + echo " The PEM-encoded $algo private key file which you configure" + echo " with the 'SSLCertificateKeyFile' directive (automatically done" + echo " when you install via APACI). ${T_MD}KEEP THIS FILE PRIVATE!${T_ME}" + echo "" + echo "o ${T_MD}$confdir/ssl.crt/server.crt${T_ME}" + echo " The PEM-encoded X.509 certificate file which you configure" + echo " with the 'SSLCertificateFile' directive (automatically done" + echo " when you install via APACI)." + echo "" + echo "Congratulations that you establish your server with real certificates." + echo "" + ;; + +esac + +##EOF## diff --git a/www/apache24/options.mk b/www/apache24/options.mk new file mode 100644 index 00000000000..ab6af53cd60 --- /dev/null +++ b/www/apache24/options.mk @@ -0,0 +1,59 @@ +# $NetBSD: options.mk,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +PKG_OPTIONS_VAR= PKG_OPTIONS.apache +PKG_OPTIONS_REQUIRED_GROUPS= mpm +PKG_OPTIONS_GROUP.mpm= apache-mpm-event apache-mpm-prefork apache-mpm-worker +PKG_SUPPORTED_OPTIONS= suexec +PKG_SUGGESTED_OPTIONS= apache-mpm-prefork + +.include "../../mk/bsd.options.mk" + +# Set the "Multi-Processing Model" used by Apache to handle requests. +# Valid values are: +# event multi-threaded based in worker, designed +# to allow more requests to be served +# simultaneously by passing off some processing +# work to supporting threads. +# BEWARE: does not work with SSL or input filters. +# prefork non-threaded, pre-forking web server +# worker hybrid multi-threaded multi-process web server +# +PLIST_VARS+= worker +.if !empty(PKG_OPTIONS:Mapache-mpm-event) +CONFIGURE_ARGS+= --with-mpm=event +PLIST.worker= yes +.elif !empty(PKG_OPTIONS:Mapache-mpm-worker) +CONFIGURE_ARGS+= --with-mpm=worker +PLIST.worker= yes +.else +CONFIGURE_ARGS+= --with-mpm=prefork +.endif + +BUILD_DEFS+= APACHE_MODULES + +PLIST_VARS+= suexec +.if !empty(PKG_OPTIONS:Msuexec) +BUILD_DEFS+= APACHE_SUEXEC_PATH +BUILD_DEFS+= APACHE_SUEXEC_DOCROOT APACHE_SUEXEC_LOGFILE + +APACHE_SUEXEC_DOCROOT?= ${PREFIX}/share/httpd/htdocs +APACHE_SUEXEC_PATH= /bin:/usr/bin:${PREFIX}/bin:/usr/local/bin +APACHE_SUEXEC_LOGFILE?= ${VARBASE}/log/httpd/suexec.log +APACHE_SUEXEC_CONFIGURE_ARGS+= \ + --with-suexec-bin=${PREFIX}/sbin/suexec \ + --with-suexec-caller=${APACHE_USER} \ + --with-suexec-safepath='${APACHE_SUEXEC_PATH:Q}' \ + --with-suexec-docroot=${APACHE_SUEXEC_DOCROOT:Q} \ + --with-suexec-logfile=${APACHE_SUEXEC_LOGFILE} + +. if !empty(PKG_OPTIONS:Mapache-shared-modules) +CONFIGURE_ARGS+= --enable-modules="all suexec" +. else +APACHE_MODULES+= suexec +. endif +CONFIGURE_ARGS+= ${APACHE_SUEXEC_CONFIGURE_ARGS:M--with-suexec-*} +BUILD_DEFS+= APACHE_SUEXEC_CONFIGURE_ARGS +BUILD_TARGET= all suexec +PLIST.suexec= yes +SPECIAL_PERMS+= sbin/suexec ${REAL_ROOT_USER} ${APACHE_GROUP} 4510 +.endif diff --git a/www/apache24/patches/patch-aa b/www/apache24/patches/patch-aa new file mode 100644 index 00000000000..661187eaa04 --- /dev/null +++ b/www/apache24/patches/patch-aa @@ -0,0 +1,146 @@ +$NetBSD: patch-aa,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +--- Makefile.in.orig 2012-01-22 23:30:14.000000000 +0000 ++++ Makefile.in +@@ -4,7 +4,7 @@ CLEAN_SUBDIRS = test + + PROGRAM_NAME = $(progname) + PROGRAM_SOURCES = modules.c +-PROGRAM_LDADD = buildmark.o $(HTTPD_LDFLAGS) $(PROGRAM_DEPENDENCIES) $(PCRE_LIBS) $(EXTRA_LIBS) $(AP_LIBS) $(LIBS) ++PROGRAM_LDADD = buildmark.o $(HTTPD_LDFLAGS) $(DL_LDFLAGS) $(PROGRAM_DEPENDENCIES) $(PCRE_LIBS) $(EXTRA_LIBS) $(AP_LIBS) $(LIBS) $(DL_LIBS) + PROGRAM_PRELINK = $(COMPILE) -c $(top_srcdir)/server/buildmark.c + PROGRAM_DEPENDENCIES = \ + server/libmain.la \ +@@ -14,7 +14,7 @@ PROGRAM_DEPENDENCIES = \ + + sbin_PROGRAMS = $(PROGRAM_NAME) + TARGETS = $(sbin_PROGRAMS) $(shared_build) $(other_targets) +-INSTALL_TARGETS = install-conf install-htdocs install-error install-icons \ ++INSTALL_TARGETS = install-htdocs install-error install-icons \ + install-other install-cgi install-include install-suexec install-build \ + install-man + +@@ -31,8 +31,8 @@ include $(top_srcdir)/build/program.mk + + install-conf: + @echo Installing configuration files +- @$(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir) $(DESTDIR)$(sysconfdir)/extra +- @$(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir)/original/extra ++ @$(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir) ++ @$(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir)/extra + @cd $(top_srcdir)/docs/conf; \ + for i in mime.types magic; do \ + if test ! -f $(DESTDIR)$(sysconfdir)/$$i; then \ +@@ -78,7 +78,8 @@ install-conf: + -e 's#@@SSLPort@@#$(SSLPORT)#g' \ + < $$i; \ + fi \ +- ) > $(DESTDIR)$(sysconfdir)/original/$$i; \ ++ ) > $(DESTDIR)$(sysconfdir)/$$i; \ ++ if false; then \ + chmod 0644 $(DESTDIR)$(sysconfdir)/original/$$i; \ + file=$$i; \ + if [ "$$i" = "httpd.conf" ]; then \ +@@ -88,13 +89,16 @@ install-conf: + $(INSTALL_DATA) $(DESTDIR)$(sysconfdir)/original/$$i $(DESTDIR)$(sysconfdir)/$$file; \ + fi; \ + fi; \ ++ fi; \ + done ; \ + done ; \ + if test -f "$(builddir)/envvars-std"; then \ + cp -p envvars-std $(DESTDIR)$(sbindir); \ ++ if false; then \ + if test ! -f $(DESTDIR)$(sbindir)/envvars; then \ + cp -p envvars-std $(DESTDIR)$(sbindir)/envvars ; \ + fi ; \ ++ fi ; \ + fi + + # Create a sanitized config_vars.mk +@@ -112,7 +116,7 @@ install-build: build/config_vars.out + $(top_srcdir)/build/instdso.sh; do \ + $(INSTALL_PROGRAM) $$f $(DESTDIR)$(installbuilddir); \ + done +- @$(INSTALL_DATA) build/config_vars.out $(DESTDIR)$(installbuilddir)/config_vars.mk ++ #@$(INSTALL_DATA) build/config_vars.out $(DESTDIR)$(installbuilddir)/config_vars.mk + @rm build/config_vars.out + + htdocs-srcdir = $(top_srcdir)/docs/docroot +@@ -137,48 +141,28 @@ dox: + doxygen $(top_srcdir)/docs/doxygen.conf + + install-htdocs: +- -@if [ -d $(DESTDIR)$(htdocsdir) ]; then \ +- echo "[PRESERVING EXISTING HTDOCS SUBDIR: $(DESTDIR)$(htdocsdir)]"; \ +- else \ + echo Installing HTML documents ; \ +- $(MKINSTALLDIRS) $(DESTDIR)$(htdocsdir) ; \ +- if test -d $(htdocs-srcdir) && test "x$(RSYNC)" != "x" && test -x $(RSYNC) ; then \ +- $(RSYNC) --exclude .svn -rlpt --numeric-ids $(htdocs-srcdir)/ $(DESTDIR)$(htdocsdir)/; \ +- else \ +- test -d $(htdocs-srcdir) && (cd $(htdocs-srcdir) && cp -rp * $(DESTDIR)$(htdocsdir)) ; \ +- cd $(DESTDIR)$(htdocsdir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \ +- fi; \ +- fi ++ $(MKINSTALLDIRS) $(DESTDIR)$(htdocsdir) ; \ ++ test -d $(htdocs-srcdir) && (cd $(htdocs-srcdir) && \ ++ @PAX@ -rwppm . $(DESTDIR)$(htdocsdir)) + + install-error: +- -@if [ -d $(DESTDIR)$(errordir) ]; then \ +- echo "[PRESERVING EXISTING ERROR SUBDIR: $(DESTDIR)$(errordir)]"; \ +- else \ + echo Installing error documents ; \ + $(MKINSTALLDIRS) $(DESTDIR)$(errordir) ; \ +- cd $(top_srcdir)/docs/error && cp -rp * $(DESTDIR)$(errordir) ; \ +- test "x$(errordir)" != "x" && cd $(DESTDIR)$(errordir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \ +- fi ++ cd $(top_srcdir)/docs/error && \ ++ @PAX@ -rwppm . $(DESTDIR)$(errordir) + + install-icons: +- -@if [ -d $(DESTDIR)$(iconsdir) ]; then \ +- echo "[PRESERVING EXISTING ICONS SUBDIR: $(DESTDIR)$(iconsdir)]"; \ +- else \ + echo Installing icons ; \ + $(MKINSTALLDIRS) $(DESTDIR)$(iconsdir) ; \ +- cd $(top_srcdir)/docs/icons && cp -rp * $(DESTDIR)$(iconsdir) ; \ +- test "x$(iconsdir)" != "x" && cd $(DESTDIR)$(iconsdir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \ +- fi ++ cd $(top_srcdir)/docs/icons && \ ++ @PAX@ -rwppm . $(DESTDIR)$(iconsdir) + + install-cgi: +- -@if [ -d $(DESTDIR)$(cgidir) ];then \ +- echo "[PRESERVING EXISTING CGI SUBDIR: $(DESTDIR)$(cgidir)]"; \ +- else \ + echo Installing CGIs ; \ + $(MKINSTALLDIRS) $(DESTDIR)$(cgidir) ; \ +- cd $(top_srcdir)/docs/cgi-examples && cp -rp * $(DESTDIR)$(cgidir) ; \ +- test "x$(cgidir)" != "x" && cd $(DESTDIR)$(cgidir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \ +- fi ++ cd $(top_srcdir)/docs/cgi-examples && \ ++ @PAX@ -rwppm . $(DESTDIR)$(cgidir) + + install-other: + @test -d $(DESTDIR)$(logfiledir) || $(MKINSTALLDIRS) $(DESTDIR)$(logfiledir) +@@ -227,14 +211,10 @@ install-man: + @test -d $(DESTDIR)$(mandir)/man1 || $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man1 + @test -d $(DESTDIR)$(mandir)/man8 || $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man8 + @test -d $(DESTDIR)$(manualdir) || $(MKINSTALLDIRS) $(DESTDIR)$(manualdir) +- @cp -p $(top_srcdir)/docs/man/*.1 $(DESTDIR)$(mandir)/man1 +- @cp -p $(top_srcdir)/docs/man/*.8 $(DESTDIR)$(mandir)/man8 +- @if test "x$(RSYNC)" != "x" && test -x $(RSYNC) ; then \ +- $(RSYNC) --exclude .svn -rlpt --numeric-ids $(top_srcdir)/docs/manual/ $(DESTDIR)$(manualdir)/; \ +- else \ +- cd $(top_srcdir)/docs/manual && cp -rp * $(DESTDIR)$(manualdir); \ +- cd $(DESTDIR)$(manualdir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \ +- fi ++ $(BSD_INSTALL_MAN) $(top_srcdir)/docs/man/*.1 $(DESTDIR)$(mandir)/man1 ++ $(BSD_INSTALL_MAN) $(top_srcdir)/docs/man/*.8 $(DESTDIR)$(mandir)/man8 ++ cd $(top_srcdir)/docs/manual && \ ++ @PAX@ -rwppm . $(DESTDIR)$(manualdir) + + install-suexec: + @if test -f $(builddir)/support/suexec; then \ diff --git a/www/apache24/patches/patch-ab b/www/apache24/patches/patch-ab new file mode 100644 index 00000000000..63967838faf --- /dev/null +++ b/www/apache24/patches/patch-ab @@ -0,0 +1,15 @@ +$NetBSD: patch-ab,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +PR#27567 + +--- server/mpm_common.c.orig 2011-12-05 00:08:01.000000000 +0000 ++++ server/mpm_common.c +@@ -256,7 +256,7 @@ AP_DECLARE(gid_t) ap_gname2id(const char + #ifndef HAVE_INITGROUPS + int initgroups(const char *name, gid_t basegid) + { +-#if defined(_OSD_POSIX) || defined(OS2) || defined(WIN32) || defined(NETWARE) ++#if defined(_OSD_POSIX) || defined(OS2) || defined(WIN32) || defined(NETWARE) || defined(__INTERIX) + return 0; + #else + gid_t groups[NGROUPS_MAX]; diff --git a/www/apache24/patches/patch-ac b/www/apache24/patches/patch-ac new file mode 100644 index 00000000000..c3b0dc55430 --- /dev/null +++ b/www/apache24/patches/patch-ac @@ -0,0 +1,12 @@ +$NetBSD: patch-ac,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +--- configure.orig 2012-02-13 13:41:00.000000000 +0000 ++++ configure +@@ -31766,7 +31766,6 @@ cat >>confdefs.h <<_ACEOF + _ACEOF + + +-perlbin=`$ac_aux_dir/PrintPath perl` + if test "x$perlbin" = "x"; then + perlbin="/replace/with/path/to/perl/interpreter" + fi diff --git a/www/apache24/patches/patch-ad b/www/apache24/patches/patch-ad new file mode 100644 index 00000000000..d454f06266b --- /dev/null +++ b/www/apache24/patches/patch-ad @@ -0,0 +1,31 @@ +$NetBSD: patch-ad,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +--- config.layout.orig 2012-02-02 12:05:28.000000000 +0000 ++++ config.layout +@@ -347,3 +347,26 @@ + proxycachedir: ${localstatedir}/proxy + + ++# NetBSD (pkgsrc) layout ++ ++ prefix: @PREFIX@ ++ exec_prefix: ${prefix} ++ bindir: ${exec_prefix}/bin ++ sbindir: ${exec_prefix}/sbin ++ libexecdir: ${exec_prefix}/lib/httpd ++ mandir: ${prefix}/man ++ sysconfdir: @SYSCONFDIR@ ++ datadir: ${prefix}/share/httpd ++ installbuilddir: ${datadir}/build ++ errordir: ${datadir}/error ++ iconsdir: ${datadir}/icons ++ htdocsdir: ${datadir}/htdocs ++ manualdir: ${datadir}/manual ++ cgidir: ${exec_prefix}/libexec/cgi-bin ++ includedir: ${prefix}/include/httpd ++ localstatedir: @VARBASE@ ++ runtimedir: ${localstatedir}/run ++ logfiledir: ${localstatedir}/log/httpd ++ proxycachedir: ${localstatedir}/db/httpd/proxy ++ ++ diff --git a/www/apache24/patches/patch-ae b/www/apache24/patches/patch-ae new file mode 100644 index 00000000000..6503a95b32b --- /dev/null +++ b/www/apache24/patches/patch-ae @@ -0,0 +1,59 @@ +$NetBSD: patch-ae,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +--- docs/conf/httpd.conf.in.orig 2012-02-06 16:55:22.000000000 +0000 ++++ docs/conf/httpd.conf.in +@@ -361,42 +361,42 @@ LogLevel warn + # necessary. + + # Server-pool management (MPM specific) +-#Include @rel_sysconfdir@/extra/httpd-mpm.conf ++#Include @rel_sysconfdir@/httpd-mpm.conf + + # Multi-language error messages +-#Include @rel_sysconfdir@/extra/httpd-multilang-errordoc.conf ++#Include @rel_sysconfdir@/httpd-multilang-errordoc.conf + + # Fancy directory listings +-#Include @rel_sysconfdir@/extra/httpd-autoindex.conf ++#Include @rel_sysconfdir@/httpd-autoindex.conf + + # Language settings +-#Include @rel_sysconfdir@/extra/httpd-languages.conf ++#Include @rel_sysconfdir@/httpd-languages.conf + + # User home directories +-#Include @rel_sysconfdir@/extra/httpd-userdir.conf ++#Include @rel_sysconfdir@/httpd-userdir.conf + + # Real-time info on requests and configuration +-#Include @rel_sysconfdir@/extra/httpd-info.conf ++#Include @rel_sysconfdir@/httpd-info.conf + + # Virtual hosts +-#Include @rel_sysconfdir@/extra/httpd-vhosts.conf ++#Include @rel_sysconfdir@/httpd-vhosts.conf + + # Local access to the Apache HTTP Server Manual +-#Include @rel_sysconfdir@/extra/httpd-manual.conf ++#Include @rel_sysconfdir@/httpd-manual.conf + + # Distributed authoring and versioning (WebDAV) +-#Include @rel_sysconfdir@/extra/httpd-dav.conf ++#Include @rel_sysconfdir@/httpd-dav.conf + + # Various default settings +-#Include @rel_sysconfdir@/extra/httpd-default.conf ++#Include @rel_sysconfdir@/httpd-default.conf + + # Configure mod_proxy_html to understand HTML4/XHTML1 + +-Include @rel_sysconfdir@/extra/proxy-html.conf ++Include @rel_sysconfdir@/proxy-html.conf + + + # Secure (SSL/TLS) connections +-#Include @rel_sysconfdir@/extra/httpd-ssl.conf ++#Include @rel_sysconfdir@/httpd-ssl.conf + # + # Note: The following must must be present to support + # starting without SSL on platforms with no /dev/random equivalent diff --git a/www/apache24/patches/patch-ag b/www/apache24/patches/patch-ag new file mode 100644 index 00000000000..3a2bd780c36 --- /dev/null +++ b/www/apache24/patches/patch-ag @@ -0,0 +1,16 @@ +$NetBSD: patch-ag,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +--- support/Makefile.in.orig 2011-12-20 14:57:46.000000000 +0000 ++++ support/Makefile.in +@@ -31,9 +31,11 @@ install: + done + @if test -f "$(builddir)/envvars-std"; then \ + cp -p envvars-std $(DESTDIR)$(sbindir); \ ++ if false; then \ + if test ! -f $(DESTDIR)$(sbindir)/envvars; then \ + cp -p envvars-std $(DESTDIR)$(sbindir)/envvars ; \ + fi ; \ ++ fi ; \ + fi + + htpasswd_OBJECTS = htpasswd.lo diff --git a/www/apache24/patches/patch-ai b/www/apache24/patches/patch-ai new file mode 100644 index 00000000000..4e10f4237f7 --- /dev/null +++ b/www/apache24/patches/patch-ai @@ -0,0 +1,19 @@ +$NetBSD: patch-ai,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +--- support/apxs.in.orig 2010-06-22 17:12:44.000000000 +0000 ++++ support/apxs.in +@@ -352,8 +352,12 @@ if ($apr_major_version < 2) { + } + } + +-my $libtool = `$apr_config --apr-libtool`; +-chomp($libtool); ++my $libtool = $ENV{'APR_LIBTOOL'}; ++unless ($libtool) { ++ $libtool = `@LOCALBASE@/bin/apr-1-config --installbuilddir`; ++ chomp($libtool); ++ $libtool = "$libtool/libtool"; ++} + + my $apr_includedir = `$apr_config --includes`; + chomp($apr_includedir); diff --git a/www/apache24/patches/patch-al b/www/apache24/patches/patch-al new file mode 100644 index 00000000000..4541e971d8a --- /dev/null +++ b/www/apache24/patches/patch-al @@ -0,0 +1,31 @@ +$NetBSD: patch-al,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +--- include/httpd.h.orig 2012-02-04 10:04:59.000000000 +0000 ++++ include/httpd.h +@@ -126,7 +126,7 @@ extern "C" { + #if defined(OS2) || defined(WIN32) + #define DEFAULT_ERRORLOG "logs/error.log" + #else +-#define DEFAULT_ERRORLOG "logs/error_log" ++#define DEFAULT_ERRORLOG DEFAULT_REL_LOGFILEDIR "/error.log" + #endif + #endif /* DEFAULT_ERRORLOG */ + +@@ -142,7 +142,7 @@ extern "C" { + + /** The name of the server config file */ + #ifndef SERVER_CONFIG_FILE +-#define SERVER_CONFIG_FILE "conf/httpd.conf" ++#define SERVER_CONFIG_FILE DEFAULT_REL_SYSCONFDIR "/httpd.conf" + #endif + + /** The default path for CGI scripts if none is currently set */ +@@ -220,7 +220,7 @@ extern "C" { + + /** The name of the MIME types file */ + #ifndef AP_TYPES_CONFIG_FILE +-#define AP_TYPES_CONFIG_FILE "conf/mime.types" ++#define AP_TYPES_CONFIG_FILE DEFAULT_REL_SYSCONFDIR "/mime.types" + #endif + + /* diff --git a/www/apache24/patches/patch-am b/www/apache24/patches/patch-am new file mode 100644 index 00000000000..978df9062a8 --- /dev/null +++ b/www/apache24/patches/patch-am @@ -0,0 +1,13 @@ +$NetBSD: patch-am,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +--- include/scoreboard.h.orig 2012-02-01 13:36:37.000000000 +0000 ++++ include/scoreboard.h +@@ -40,7 +40,7 @@ extern "C" { + + /* Scoreboard file, if there is one */ + #ifndef DEFAULT_SCOREBOARD +-#define DEFAULT_SCOREBOARD "logs/apache_runtime_status" ++#define DEFAULT_SCOREBOARD DEFAULT_REL_RUNTIMEDIR "logs/apache_runtime_status" + #endif + + /* Scoreboard info on a process is, for now, kept very brief --- diff --git a/www/apache24/patches/patch-aw b/www/apache24/patches/patch-aw new file mode 100644 index 00000000000..3b50c441a3b --- /dev/null +++ b/www/apache24/patches/patch-aw @@ -0,0 +1,15 @@ +$NetBSD: patch-aw,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $ + +--- modules/metadata/mod_mime_magic.c.orig 2011-12-05 00:08:01.000000000 +0000 ++++ modules/metadata/mod_mime_magic.c +@@ -106,6 +106,10 @@ + #include + #endif + ++#ifdef __QNX__ /* naming conflict with */ ++#define mcheck mod_mime_magic_mcheck ++#endif ++ + /* + * data structures and related constants + */ -- cgit v1.2.3