Greg - 2011-11-16

Hi.
I'm running Apache/2.2.16 (Ubuntu) , libapache2-mod-fcgid
1:2.3.5-2ubuntu0.1, php5-cgi 5.3.3-1ubuntu9.6. on Ubuntu 10.10 LTS,
in a Virtualmin LAMP stack. Each Virtualhost runs suexec, thus the
need for mod-fcgid so that each site is running under its own user
account.

I have a clean install of PHPWiki , latest stable version. I'm trying
to import the data from the old install of PHPWiki (3.2 MB zip), using
the restore feature, every time I try the restore the process crashes
with "500 Internal server error" the the following in the logs :

mod_fcgid:
read data timeout in 31 seconds, referer:
http://test-phpwiki.example.com/index.php/PhpWikiAdministration

(110)Connection timed out: mod_fcgid: ap_pass_brigade failed in
handle_request function, referer:
http://test-phpwiki.example.com/index.php/PhpWikiAdministration

I have adjusted every setting I can find in php, mod-fcgid, and
apache. I'v googled for the last day and a half with no clear answer.

Configuration as follows:

root@nzhmlapp04:/home/phpwiki# cat fcgi-bin/php5.fcgi

!/bin/bash

PHPRC=$PWD/../etc/php5
export PHP_FCGI_MAX_REQUESTS=5000
export PHP_FCGI_CHILDREN=8
export PHPRC
umask 022
SCRIPT_FILENAME=$PATH_TRANSLATED
export SCRIPT_FILENAME
exec /usr/bin/php5-cgi

root@nzhmlapp04:/home/phpwiki# cat /etc/apache2/mods-enabled/fcgid.conf
<IfModule mod_fcgid.c="">
AddHandler fcgid-script .fcgi
FcgidConnectTimeout 300
MaxRequestLen 1000000000
IdleTimeout 3600
ProcessLifeTime 7200
MaxProcessCount 1000
DefaultMinClassProcessCount 3
DefaultMaxClassProcessCount 100
IPCConnectTimeout 60
IPCCommTimeout 600
BusyTimeout 300
</IfModule>

apache2.conf

root@nzhmlapp04:/home/phpwiki# cat /etc/apache2/apache2.conf grep
ServerRoot "/etc/apache2"
LockFile /var/lock/apache2/accept.lock
PidFile ${APACHE_PID_FILE}
TimeOut 300
KeepAlive on
MaxKeepAliveRequests 100
KeepAliveTimeout 60
<IfModule mpm_prefork_module="">
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
<IfModule mpm_worker_module="">
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
<IfModule mpm_event_module="">
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
AccessFileName .htaccess
<Files ~="" "^\.ht"="">
Order allow,deny
Deny from all
Satisfy all
</Files>
DefaultType text/plain
HostnameLookups Off
ErrorLog /var/log/apache2/error.log
LogLevel warn
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
Include /etc/apache2/httpd.conf
Include /etc/apache2/ports.conf
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\"
\"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\"
\"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
CustomLog /var/log/apache2/other_vhosts_access.log vhost_combined
Include /etc/apache2/conf.d/
Include /etc/apache2/sites-enabled/
NameVirtualHost 192.168.32.22:80

apache virtualhost

SuexecUserGroup "#1014" "#1014"
ServerName phpwiki.example.com
ServerAlias www.phpwiki.example.com
ServerAlias test-phpwiki.example.com
ServerAlias webmail.phpwiki.example.com
ServerAlias admin.phpwiki.example.com
DocumentRoot /home/phpwiki/public_html
ErrorLog /var/log/virtualmin/phpwiki.example.com_error_log
CustomLog /var/log/virtualmin/phpwiki.example.com_access_log combined
ScriptAlias /cgi-bin/ /home/phpwiki/cgi-bin/
ScriptAlias /awstats/ /home/phpwiki/cgi-bin/
DirectoryIndex index.html index.htm index.php index.php4 index.php5
<Directory home="" phpwiki="" public_html="">
Options -Indexes +IncludesNOEXEC +FollowSymLinks +ExecCGI
allow from all
AllowOverride All
AddHandler fcgid-script .php
AddHandler fcgid-script .php5
FCGIWrapper /home/phpwiki/fcgi-bin/php5.fcgi .php
FCGIWrapper /home/phpwiki/fcgi-bin/php5.fcgi .php5
</Directory>
<Directory home="" phpwiki="" cgi-bin="">
allow from all
</Directory>
RewriteEngine on
RewriteCond %{HTTP_HOST} =webmail.phpwiki.example.com
RewriteRule ^(.)
https://phpwiki.example.com:20000/
RewriteCond %{HTTP_HOST} =admin.phpwiki.example.com
RewriteRule ^(.
)
https://phpwiki.example.com:10000/
RemoveHandler .php
RemoveHandler .php5
IPCCommTimeout 31
<Files awstats.pl="">
AuthName "phpwiki.example.com statistics"
AuthType Basic
AuthUserFile /home/phpwiki/.awstats-htpasswd
require valid-user
</Files>

php.ini

engine = On
short_open_tag = On
asp_tags = Off
precision = 14
y2k_compliance = On
output_buffering = 4096
zlib.output_compression = Off
implicit_flush = Off
unserialize_callback_func =
serialize_precision = 100
allow_call_time_pass_reference = Off
safe_mode = Off
safe_mode_gid = Off
safe_mode_include_dir =
safe_mode_exec_dir =
safe_mode_allowed_env_vars = PHP_
safe_mode_protected_env_vars = LD_LIBRARY_PATH
disable_functions =
disable_classes =
expose_php = On
max_execution_time = 600
max_input_time = 600
memory_limit = 128M
error_reporting = E_ALL & ~E_DEPRECATED
display_errors = Off
display_startup_errors = Off
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = Off
html_errors = On
error_log = /home/phpwiki/logs/php_errors.log
variables_order = "GPCS"
request_order = "GP"
register_globals = Off
register_long_arrays = Off
register_argc_argv = Off
auto_globals_jit = On
post_max_size = 32M
magic_quotes_gpc = Off
magic_quotes_runtime = Off
magic_quotes_sybase = Off
auto_prepend_file =
auto_append_file =
default_mimetype = "text/html"
doc_root =
user_dir =
enable_dl = Off
file_uploads = On
upload_tmp_dir = /home/phpwiki/tmp
upload_max_filesize = 32M
max_file_uploads = 20
allow_url_fopen = On
allow_url_include = Off
default_socket_timeout = 240

pdo_mysql.cache_size = 2000
pdo_mysql.default_socket=

define_syslog_variables = Off

SMTP = localhost
smtp_port = 25
mail.add_x_header = On

sql.safe_mode = Off

odbc.allow_persistent = On
odbc.check_persistent = On
odbc.max_persistent = -1
odbc.max_links = -1
odbc.defaultlrl = 4096
odbc.defaultbinmode = 1

ibase.allow_persistent = 1
ibase.max_persistent = -1
ibase.max_links = -1
ibase.timestampformat = "%Y-%m-%d %H:%M:%S"
ibase.dateformat = "%Y-%m-%d"
ibase.timeformat = "%H:%M:%S"

mysql.allow_local_infile = On
mysql.allow_persistent = On
mysql.cache_size = 2000
mysql.max_persistent = -1
mysql.max_links = -1
mysql.default_port =
mysql.default_socket =
mysql.default_host =
mysql.default_user =
mysql.default_password =
mysql.connect_timeout = 60
mysql.trace_mode = Off

mysqli.max_persistent = -1
mysqli.allow_persistent = On
mysqli.max_links = -1
mysqli.cache_size = 2000
mysqli.default_port = 3306
mysqli.default_socket =
mysqli.default_host =
mysqli.default_user =
mysqli.default_pw =
mysqli.reconnect = Off

mysqlnd.collect_statistics = On
mysqlnd.collect_memory_statistics = Off

pgsql.allow_persistent = On
pgsql.auto_reset_persistent = Off
pgsql.max_persistent = -1
pgsql.max_links = -1
pgsql.ignore_notice = 0
pgsql.log_notice = 0

sybct.allow_persistent = On
sybct.max_persistent = -1
sybct.max_links = -1
sybct.min_server_severity = 10
sybct.min_client_severity = 10

bcmath.scale = 0

session.save_handler = files
session.save_path = /home/phpwiki/tmp
session.use_cookies = 1
session.use_only_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.cookie_httponly =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 1000
session.gc_maxlifetime = 1440
session.bug_compat_42 = Off
session.bug_compat_warn = Off
session.referer_check =
session.entropy_length = 0
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 0
session.hash_bits_per_character = 5
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"

mssql.allow_persistent = On
mssql.max_persistent = -1
mssql.max_links = -1
mssql.min_error_severity = 10
mssql.min_message_severity = 10
mssql.compatability_mode = Off
mssql.secure_connection = Off

tidy.clean_output = Off

soap.wsdl_cache_enabled=1
soap.wsdl_cache_dir="/tmp"
soap.wsdl_cache_ttl=86400
soap.wsdl_cache_limit = 5

ldap.max_links = -1

Any ideas what could be causing this , and how do I resolve it ?

Thanks