Ok, der "kleine" Unterschied ist, das mein System auf SuSE 9.0 aufsitzt. Das dürfte aber nicht der gravierende Unterschied sein, sondern das ich mich bei wichtigen Elementen von den RPM-Paketen verabschiedet habe und alles nach meinen persönlichen Bedürfnissen angepasst habe.
Zum Apache...
Suse baut den Apache2 wie folgt.
8< Schnipp
Name: apache2
%define pname apache2
%define vers 2
%define httpd httpd2
%define apache_mmn %(test -s %{S:0} && { echo -n apache_mmn_; bzcat %{S:0} | awk '/^#define MODULE_MAGIC_NUMBER_MAJOR/ {printf "%d", $3}'; })
%define default_mpm prefork
%{!?perchild:%define perchild 0}
%{!?prefork:%define prefork 1}
%{!?worker:%define worker 1}
%{!?leader:%define leader 1}
%{!?metuxmpm:%define metuxmpm 1}
%define mpms_to_build %(test %perchild = 1 && printf perchild) %(test %prefork = 1 && printf prefork) %(test %worker = 1 && printf worker) %(test %leader = 1 && printf leader) %(test %metuxmpm = 1 && printf metuxmpm)
# dir names
%if %suse_version > 800
%define datadir /srv/www
%else
%define datadir /usr/local/httpd
%endif
%define htdocsdir %{datadir}/htdocs
%define manualdir %{_prefix}/share/%{pname}/manual
%define errordir %{_prefix}/share/%{pname}/error
%define iconsdir %{_prefix}/share/%{pname}/icons
%define cgidir %{datadir}/cgi-bin
%define localstatedir /var/lib/apache2
%define proxycachedir /var/cache/apache2
%define logfiledir /var/log/apache2
%define runtimedir /var/run
%define sysconfdir /etc/apache2
%define includedir %{_includedir}/%{pname}
%define libexecdir %_libdir/%{pname}
%define installbuilddir %{_prefix}/share/%{pname}/build
%define userdir public_html
>8 Schnapp
8< Schnipp
%build
#
# O/ |_ o| _|
# /O |_)|_|||(_|
#
function configure {
CFLAGS="$RPM_OPT_FLAGS -fPIC -Wall -fno-strict-aliasing %{?lfs_flags:%lfs_flags}"
CPPFLAGS="-DSSL_EXPERIMENTAL_ENGINE -DMAX_SERVER_LIMIT=200000"
./configure
--enable-maintainer-mode
--enable-layout=SuSE81%(test "%_lib" = lib64 && echo -n _64)
--with-program-name=httpd%{vers}$mpm_suffix
--with-mpm=$mpm
--with-perl=`which perl`
%if "$mpm" == "leader"
%ifarch %ix86
%ifnarch i386 i486
--enable-nonportable-atomics=yes
%endif
%endif
%endif
--enable-mods-shared=all
--enable-ssl=shared
--disable-isapi
--enable-deflate
--enable-echo
--enable-ext-filter
--enable-charset-lite
--enable-file-cache
--enable-logio
--enable-case_filter
--enable-case_filter_in
--with-ldap
--enable-ldap
--enable-auth_ldap
--enable-proxy
--enable-proxy-connect
--enable-proxy-ftp
--enable-proxy-http
--enable-cache
--enable-disk-cache
--enable-mem-cache
--enable-suexec
--with-suexec-bin=%{_sbindir}/suexec%{vers}
--with-suexec-caller=wwwrun
--with-suexec-docroot=%{htdocsdir}
--with-suexec-logfile=%{logfiledir}/suexec.log
--with-suexec-userdir=%{userdir}
--with-suexec-uidmin=96
--with-suexec-gidmin=96
--with-suexec-safepath="/usr/local/bin:/usr/bin:/bin"
}
>8 Schnapp
Das SuSE 8.1 Layout sieht in etwa wie folgt aus.
<Layout MeinServer>
prefix: /usr
exec_prefix: ${prefix}
bindir: ${prefix}/bin
sbindir: ${prefix}/sbin
libdir: ${prefix}/lib
libexecdir: ${prefix}/lib/apache2
mandir: ${prefix}/share/man
sysconfdir: /etc/apache2
datadir: /srv/www
installbuilddir: ${prefix}/share/apache2/build
errordir: ${prefix}/share/apache2/error
iconsdir: ${prefix}/share/apache2/icons
htdocsdir: ${datadir}/htdocs
manualdir: ${prefix}/share/apache2/manual
cgidir: ${datadir}/cgi-bin
includedir: ${prefix}/include/apache2
localstatedir: /var/lib/apache2
runtimedir: /var/run
logfiledir: /var/log/apache2
proxycachedir: /var/cache/apache2
</Layout>
Absolut korrekt im SuSE-Layout wäre, wenn der Präfix auf /srv/www zeigen würde und alle ${prefix} Einträge mit /usr ersetzt werden würde. Nur dann würdest du ebenfalls deine Schreibtischplatte durchbeißen.
Jetzt dürfest du eigentlich genug Infos als Basis haben, um den SuSE Apache2 zu killen und durch eine vernünftige Eigenproduktion zu ersetzen.
PS: Es geht schneller eine neu erzeugte httpd.conf einzurichten, als das SuSE-Zeug zu korrigieren.