-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi,
I'm trying to have peruser-mpm working on FreeBSD 7.2-RELEASE, but can't
start Apache.
I've installed Apache using apache22-peruser-mpm port that comes with my
FreeBSD install.
Here is the information about my Apache :
# apachectl -V
Server version: Apache/2.2.11 (FreeBSD)
Server built: Jun 13 2009 10:22:48
Server's Module Magic Number: 20051115:21
Server loaded: APR 1.3.3, APR-Util 1.3.4
Compiled using: APR 1.3.3, APR-Util 1.3.4
Architecture: 32-bit
Server MPM: Peruser
threaded: no
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/experimental/peruser"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_FLOCK_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=128
-D HTTPD_ROOT="/usr/local"
-D SUEXEC_BIN="/usr/local/bin/suexec"
-D DEFAULT_PIDLOG="/var/run/httpd.pid"
-D DEFAULT_SCOREBOARD="/var/run/apache_runtime_status"
-D DEFAULT_LOCKFILE="/var/run/accept.lock"
-D DEFAULT_ERRORLOG="/var/log/httpd-error.log"
-D AP_TYPES_CONFIG_FILE="etc/apache22/mime.types"
-D SERVER_CONFIG_FILE="etc/apache22/httpd.conf"
List of modules installed with Apache :
# cat /usr/local/etc/apache22/httpd.conf | grep LoadModule
# have to place corresponding `LoadModule' lines at this location so the
# LoadModule foo_module modules/mod_foo.so
LoadModule authn_file_module libexec/apache22/mod_authn_file.so
LoadModule authn_dbm_module libexec/apache22/mod_authn_dbm.so
LoadModule authn_anon_module libexec/apache22/mod_authn_anon.so
LoadModule authn_default_module libexec/apache22/mod_authn_default.so
LoadModule authn_alias_module libexec/apache22/mod_authn_alias.so
LoadModule authz_host_module libexec/apache22/mod_authz_host.so
LoadModule authz_groupfile_module libexec/apache22/mod_authz_groupfile.so
LoadModule authz_user_module libexec/apache22/mod_authz_user.so
LoadModule authz_dbm_module libexec/apache22/mod_authz_dbm.so
LoadModule authz_owner_module libexec/apache22/mod_authz_owner.so
LoadModule authz_default_module libexec/apache22/mod_authz_default.so
LoadModule auth_basic_module libexec/apache22/mod_auth_basic.so
LoadModule auth_digest_module libexec/apache22/mod_auth_digest.so
LoadModule file_cache_module libexec/apache22/mod_file_cache.so
LoadModule cache_module libexec/apache22/mod_cache.so
LoadModule disk_cache_module libexec/apache22/mod_disk_cache.so
LoadModule dumpio_module libexec/apache22/mod_dumpio.so
LoadModule include_module libexec/apache22/mod_include.so
LoadModule filter_module libexec/apache22/mod_filter.so
LoadModule charset_lite_module libexec/apache22/mod_charset_lite.so
LoadModule deflate_module libexec/apache22/mod_deflate.so
LoadModule log_config_module libexec/apache22/mod_log_config.so
LoadModule logio_module libexec/apache22/mod_logio.so
LoadModule env_module libexec/apache22/mod_env.so
LoadModule mime_magic_module libexec/apache22/mod_mime_magic.so
LoadModule cern_meta_module libexec/apache22/mod_cern_meta.so
LoadModule expires_module libexec/apache22/mod_expires.so
LoadModule headers_module libexec/apache22/mod_headers.so
LoadModule usertrack_module libexec/apache22/mod_usertrack.so
LoadModule unique_id_module libexec/apache22/mod_unique_id.so
LoadModule setenvif_module libexec/apache22/mod_setenvif.so
LoadModule version_module libexec/apache22/mod_version.so
LoadModule ssl_module libexec/apache22/mod_ssl.so
LoadModule mime_module libexec/apache22/mod_mime.so
LoadModule dav_module libexec/apache22/mod_dav.so
LoadModule status_module libexec/apache22/mod_status.so
LoadModule autoindex_module libexec/apache22/mod_autoindex.so
LoadModule asis_module libexec/apache22/mod_asis.so
LoadModule info_module libexec/apache22/mod_info.so
LoadModule cgi_module libexec/apache22/mod_cgi.so
LoadModule dav_fs_module libexec/apache22/mod_dav_fs.so
LoadModule vhost_alias_module libexec/apache22/mod_vhost_alias.so
LoadModule negotiation_module libexec/apache22/mod_negotiation.so
LoadModule dir_module libexec/apache22/mod_dir.so
LoadModule imagemap_module libexec/apache22/mod_imagemap.so
LoadModule actions_module libexec/apache22/mod_actions.so
LoadModule speling_module libexec/apache22/mod_speling.so
LoadModule userdir_module libexec/apache22/mod_userdir.so
LoadModule alias_module libexec/apache22/mod_alias.so
LoadModule rewrite_module libexec/apache22/mod_rewrite.so
LoadModule php5_module libexec/apache22/libphp5.so
PHP5 has also been installed from the ports, and kernel is generic
(tried with a custom one before, did not work better).
When trying to start Apache, I get the following error :
# apachectl start
Segmentation fault (core dumped)
Running gdb on the generated httpd.core file, executing command bt (I
give only the last lines) :
...
...
Loaded symbols for /usr/local/lib/libxml2.so.5
Reading symbols from /libexec/ld-elf.so.1...(no debugging symbols
found)...done.
Loaded symbols for /libexec/ld-elf.so.1
#0 0x080883d1 in child_add ()
[New Thread 0x28401040 (LWP 100063)]
(gdb) bt
#0 0x080883d1 in child_add ()
#1 0x080886c8 in cf_Multiplexer ()
#2 0x08077522 in invoke_cmd ()
#3 0x08077b00 in ap_walk_config ()
#4 0x08077c37 in ap_process_config_tree ()
#5 0x08063b81 in main ()
When my Apache configuration is incorrect, it tells me so (if Processor
is not defined, for example). So I guess my configuration is correct...?
I've separated some directives into several files, since I intend to
reproduce a multi-user environment : I wanted to add each Processor
declaration in a specific file corresponding to vhost. Also, vhost file
has ServerEnvironment directive correctly defined.
Here is the configuration section dedicaded to peruser-mpm :
# cat /usr/local/etc/apache22/extra/httpd-peruser-mpm.conf
MinSpareProcessors 2
MinProcessors 2
MaxProcessors 10
MaxClients 150
MaxRequestsPerChild 1000
IdleTimeout 120
ExpireTimeout 120
KeepAlive Off
Multiplexer www www
Multiplexer www www
Processor www www
Include etc/apache22/peruser-processors/*.conf
An example of .conf file in peruser-processors directory :
# cat /usr/local/etc/apache22/peruser-processors/snoweo.conf
Processor snoweo snoweo
snoweo is a valid unix user, and corresponding vhost file (which defines
ServerEnvironment snoweo snoweo)is loaded after peruser configuration.
Am I supposed to add a Processor for www, the default vhost ? I did, but
even without, it doesn't work better...
I've read that peruser-mpm still needed to be tested... That's what I'd
like to do :)
Hopefully someone knows what to do with all this information (spent all
night on it, more than 12 hours, so I hope I didn't miss something...)
Thanks.
- --
Olivier Cecillon
Empreinte gpg : 01AE 3433 ACA9 8AF2 09C2 1428 AF58 7E61 D1DA AD6B
Téléchargez ma clé publique : http://olivier.cecillon.fr/lien/pubkey
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFKM9Lir1h+YdHarWsRAtY9AJ4zajoJrcn4RX9kPOZZ9KYvCUQXmACdEjXE
tT6MACDkmZ/9WBUIi2L/hgA=
=Msp8
-----END PGP SIGNATURE-----
_______________________________________________
Peruser mailing list
[email protected]
http://www.telana.com/mailman/listinfo/peruser