@@ -0,0 +1,114 @@
+README.SuSE for Apache 2
+
+
+For The Impatient
+=================
+
+ o There are several MPM packages (MPM = multiprocessing module, which implements
+ the threads/processes model). The MPM packages contain the actual apache binary.
+ At least one MPM package must be installed.
+
+ o The apache v1 and v2 packages can be installed and run side by side :)
+
+ o Some commands have a "2" suffix, and are thus easily confused with Apache 1
+ commands -- if you have an old apache (1.3) installation around.
+
+ o Edit /etc/sysconfig/apache2 to configure the list of modules to load, and other things.
+ It is no longer required to run SuSEconfig after such changes. (In fact, the
+ SuSEconfig.apache2 does no longer exist.)
+
+
+ o For building apache modules, there are 4 apxs commands (all come with the
+ apache2-devel package):
+ apxs2 builds a common module for all MPMs and installs to /usr/lib/apache2
+ apxs2-prefork builds for prefork and installs to /usr/lib/apache2-prefork
+ apxs2-worker builds for worker and installs to /usr/lib/apache2-worker
+
+ If you build apache modules, the configure script might not find apxs, and
+ you'll need an option like --with-apxs=apxs2[-worker, ...], or of course you can set
+ a symlink to apxs2.
+
+ o The Apache Runtime (APR) is in the "libapr0" package (this package was named "apr"
+ in the past (8.1))
+
+
+Choosing the right MPM for your application
+===========================================
+
+apache2-prefork is implemented with a prefork regime, while
+apache2-worker uses a hybrid threaded/preforked model.
+
+Which one to use? The short answer is:
+ - if in doubt, simply use prefork
+ - use prefork if you use mod_php4
+ - use worker if you need maximal performance with (possibly) less resources
+ (smaller memory footprint of threade compared to the same number as processes)
+
+The following nice article has a more in depth answer:
+http://www.onlamp.com/pub/a/apache/2004/06/17/apacheckbk.html
+
+See
+http://httpd.apache.org/docs-2.2/mpm.html and
+http://httpd.apache.org/docs-2.2/misc/perf-tuning.html#compiletime
+for more technical details.
+
+In general, using a threaded MPM (worker) requires that all libraries that are
+loaded into apache (and libraries loaded by them in turn) be threadsafe as well.
+See
+http://httpd.apache.org/docs-2.2/developer/thread_safety.html for a status on
+some libraries.
+
+
+Upgrading from apache 1.3
+=========================
+
+For a smooth transition from apache 1.3, apache 2 is installable alongside apache
+1.3. There are a few modules for apache 1 that have not been ported or enough
+tested for apache 2, but most important modules are available by now.
+
+The mechanism of specifying modules to load into the server has been cleaned up
+so a reasonable default set of modules is loaded. (It is not useful to load all
+available modules by default, it would make the server quite big and slow. This
+is important given as the number of modules in the apache base distribution is
+rising and rising (about 50 at this time).
+
+In previous apache packages (1.3), modules were activated by setting a
+APACHE_MOD_XYZ variable to "yes" and running SuSEconfig.
+Nowadays, modules are activated by adding them to a the APACHE_MODULES
+variable in /etc/sysconfig/apache2, and simply restarting apache.
+
+
+Building modules for apache 2
+=============================
+
+Therefore, the different MPMs will be needed and a mechanism to build
+the modules spesific to them. This can now be done with the apxs2,
+apxs2-worker or apxs2-prefork script.
+
+For a module's configure script, you would typically use
+ --which-apxs=/usr/sbin/apxs2-prefork
+
+In RPM spec files, you can use
+ %define apxs apxs2
+ %define apache_libexecdir %(%{apxs} -q libexecdir)
+to build modules, or use apxs2-prefork (for instance) to build a module
+specifically for the prefork MPM.
+
+To further the example, apxs2-prefork will install a module below
+/usr/lib/apache2-prefork/, while "apxs2" will install it below
+/usr/lib/apache2/.
+
+-a adds the module to APACHE_MODULES in /etc/sysconfig/apache2, which in turn
+takes care of loading the module.
+
+Thus, usually you will only have to call
+ apxs2 -cia my_module.c
+and all is fine.
+
+
+--
+Suggestions or bug reports (via http://bugzilla.novell.com/) are most
+welcome.
+
+
+Mar 14 2005, Peter Poeml
|