Bug 53140 - "/server-status" & "/server-info" fail (File does not exist) to display
Summary: "/server-status" & "/server-info" fail (File does not exist) to display
Status: RESOLVED INVALID
Alias: None
Product: Apache httpd-2
Classification: Unclassified
Component: mod_status (show other bugs)
Version: 2.4-HEAD
Hardware: PC Linux
: P2 major (vote)
Target Milestone: ---
Assignee: Apache HTTPD Bugs Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-04-24 16:24 UTC by locuse
Modified: 2012-04-24 17:24 UTC (History)
0 users



Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description locuse 2012-04-24 16:24:34 UTC
i've built/installed httpd 2.4.x server on linux/64

	svn info
		Path: .
		URL: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x
		Repository Root: https://svn.apache.org/repos/asf
		Repository UUID: 13f79535-47bb-0310-9956-ffa450edef68
		Revision: 1329533
		Node Kind: directory
		Schedule: normal
		Last Changed Author: jorton
		Last Changed Rev: 1329138
		Last Changed Date: 2012-04-23 02:08:55 -0700 (Mon, 23 Apr 2012)

	httpd -V
		Server version: Apache/2.4.3-dev (Unix)
		Server built:   Apr 24 2012 07:29:25
		Server's Module Magic Number: 20120211:3
		Server loaded:  APR 2.0.0-dev
		Compiled using: APR 2.0.0-dev
		Architecture:   64-bit
		Server MPM:     event
		  threaded:     yes (fixed thread count)
		    forked:     yes (variable process count)
		Server compiled with....
		 -D APR_HAS_SENDFILE
		 -D APR_HAS_MMAP
		 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
		 -D APR_USE_SYSVSEM_SERIALIZE
		 -D APR_USE_PTHREAD_SERIALIZE
		 -D APR_HAS_OTHER_CHILD
		 -D AP_HAVE_RELIABLE_PIPED_LOGS
		 -D DYNAMIC_MODULE_LIMIT=256
		 -D HTTPD_ROOT="/usr/local/apache24x"
		 -D SUEXEC_BIN="/usr/local/apache24x/bin/suexec"
		 -D DEFAULT_PIDLOG="/var/run/apache2/logs/httpd.pid"
		 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
		 -D DEFAULT_ERRORLOG="logs/error_log"
		 -D AP_TYPES_CONFIG_FILE="/usr/local/etc/apache2/mime.types"
		 -D SERVER_CONFIG_FILE="/usr/local/etc/apache2/httpd.conf"

	apachectl -t -D DUMP_MODULES | egrep -i "status|info"
		 status_module (shared)
		 info_module (shared)


it works as expected, except for mod_info & mod_status pages (which work fine on my 2.3.x box).

on 2.4.x, with typical host config that includes,

	cat /usr/local/etc/apache2/vhosts.d/srv.locuse.loc
		...
		<Location /server-status>
		    SetHandler server-status
		</Location>
		<Location /server-info>
		    SetHandler server-info
		</Location>
		<Location /php-fpm-status>
		    SetHandler php-fastcgi-virt
		    Action php-fastcgi-virt /usr/local/php5/sbin/php-fpm.fcgi virtual
		</Location>
		...
@ nav to:

	http://srv.locuse.loc/index.html
	http://srv.locuse.loc/info.php

both work as expected.

but, @ nav to:

	http://srv.locuse.loc/server-status

in browser, i see:

	The requested URL was not found on this server. The link on the ">referring page seems to be wrong or outdated. Please inform the author of ">that page about the error. If you entered the URL manually please check your spelling and try again.

	with links @

		[">referring page] ==> http://srv.locuse.loc/%3C!--#echo%20encoding=
	&
		[">that page]      ==> http://srv.locuse.loc/%3C!--#echo%20encoding=
	logs show:

and, logs show:

	==> /var/log/apache2/srv.locuse.loc.80.error_log <==
		...
		[Tue Apr 24 08:28:37.454048 2012] [core:info] [pid 27965:tid 139942639892224] [client 10.10.9.7:35536] AH00128: File does not exist: /srv/www/srv.locuse.loc/<!--, referer:
		...

	==> /var/log/apache2/srv.locuse.loc.80.log <==
		...
		srv.locuse.loc - - - [24/Apr/2012:08:28:37 -0700] "GET /%3C!-- HTTP/1.1" 404 618 "http://srv.locuse.loc/server-status" "Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20100101 Firefox/11.0"
		...

for reference, the same config on a 2.3.x server works OK.
Comment 1 Eric Covener 2012-04-24 16:44:49 UTC
can you post a flat, simple configuration  that demonstrates the problem?
Comment 2 locuse 2012-04-24 17:24:42 UTC
the requested process of simplifying/flattening my *overall* config found the problem -- just not where i was looking.

disabling modsecurity2 module fixed the problem -- /server-status & /server-info both display as requested.

the (in?)direct cause, it seems, is that latest apr/apr-util seems seem to no longer have an apu-*-config.  in config output for httpd, i note,

	...
	configure: APR-util obsoleted, woohoo
	...

in any case, modsecurity2 module build, which was previously 'happy' with config option of just "--with-apxs=..." for httpd 2.4.x now *requires* (not that it tells you that ...) an additional,

  --with-apr=/usr/local/apache24x/bin/apr-2-config
  --with-apu=/usr/local/apache24x/bin/apr-2-config

with those config options in place, a rebuild of modsecurity2, then reenabling the module in apache24x, all's well again.

apologies for the more-or-less fire drill ...