[rt-users] Bizarre problem: "Invalid method in request"

Greg Stark gsstark at mit.edu
Mon Aug 23 15:46:52 EDT 2004


I'm trying to set up a fresh RT instance and everything seems to have gone
smoothly but when I try to log in to the system for the first time I get
"Invalid method in request". 

This seems to be indicating that Apache is seeing the form fields in place of
the POST method. Except a proper post appears in the logs first, so it seems
like something is performing a subrequest but munging the fields badly first.

There are other things configured on the web server, including another
mod_perl site, so conceivably it's something else interfereing with Mason. But
there's nothing terribly complex. Notably, there's no use of mod_rewrite
anywhere.

Does anyone have any clue what could be going on here?
I'm at a loss.


Here are the logs

10.4.0.2 - - [23/Aug/2004:15:40:16 -0400] "GET /rt/ HTTP/1.1" 200 3192
10.4.0.2 - - [23/Aug/2004:15:40:16 -0400] "GET /rt/NoAuth/webrt.css HTTP/1.1" 200 7172
10.4.0.2 - - [23/Aug/2004:15:40:16 -0400] "GET /rt/NoAuth/images//bplogo.gif HTTP/1.1" 200 825
10.4.0.2 - - [23/Aug/2004:15:40:19 -0400] "GET /rt/NoAuth/webrt.css HTTP/1.1" 200 7172
10.4.0.2 - - [23/Aug/2004:15:40:19 -0400] "POST /rt/index.html HTTP/1.1" 200 3194
10.4.0.2 - - [23/Aug/2004:15:40:35 -0400] "user=root&pass=password" 501 - "-" "-"

[Mon Aug 23 15:40:35 2004] [error] [client 10.4.0.2] Invalid method in request user=root&pass=password
[Mon Aug 23 15:40:35 2004] [error] [client 10.4.0.2] Invalid method in request user=root&pass=password


This is with the Debian request-tracker3.2 package. I've tried with the
request-tracker3 package and I see no similar bug reports against these
packages.

bash-2.05b# apache -V
Server version: Apache/1.3.31 (Debian GNU/Linux)
Server built:   Aug  1 2004 08:44:19
Server's Module Magic Number: 19990320:16
Server compiled with....
 -D EAPI
 -D HAVE_MMAP
 -D HAVE_SHMGET
 -D USE_SHMGET_SCOREBOARD
 -D USE_MMAP_FILES
 -D HAVE_FCNTL_SERIALIZED_ACCEPT
 -D HAVE_SYSVSEM_SERIALIZED_ACCEPT
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D DYNAMIC_MODULE_LIMIT=64
 -D HARD_SERVER_LIMIT=4096
 -D HTTPD_ROOT="/usr"
 -D SUEXEC_BIN="/usr/lib/apache/suexec"
 -D DEFAULT_PIDLOG="/var/run/apache.pid"
 -D DEFAULT_SCOREBOARD="/var/run/apache.scoreboard"
 -D DEFAULT_LOCKFILE="/var/run/apache.lock"
 -D DEFAULT_ERRORLOG="/var/log/apache/error.log"
 -D TYPES_CONFIG_FILE="/etc/mime.types"
 -D SERVER_CONFIG_FILE="/etc/apache/httpd.conf"
 -D ACCESS_CONFIG_FILE="/etc/apache/access.conf"
 -D RESOURCE_CONFIG_FILE="/etc/apache/srm.conf"


The apache config for this virtual server is:


<VirtualHost *>
    DocumentRoot /usr/share/request-tracker3.2/html/
    ServerName rt.xeocode.com

    ErrorLog /var/log/request-tracker3.2/error.log
    CustomLog /var/log/request-tracker3.2/access.log common
    Include "/etc/request-tracker3.2/apache-modperl.conf"
</VirtualHost>



The above mentioned include file is:



# Include this file with:
#
#   Include /etc/request-tracker3.2/apache-modperl.conf
#
# into your Apache configuration file, either in the non-virtual
# section or into a virtual host section

AddDefaultCharset UTF-8
PerlRequire /usr/share/request-tracker3.2/libexec/webmux.pl

PerlModule Apache::DBI
PerlFreshRestart Off

Alias /rt /usr/share/request-tracker3.2/html

# We need this to prevent requests for images being sent through to
# the RT::Mason handler.

<Directory /usr/share/request-tracker3.2/html/NoAuth/images>
  SetHandler default-handler
</Directory>

<Directory /usr/share/request-tracker3.2/html>
 SetHandler perl-script
 PerlHandler RT::Mason
</Directory>



The RT_SiteConfig.pm:



# RT_SiteConfig.pm
#
# These are the bits you absolutely *must* edit.
#
# To find out how, please read
#   /usr/share/doc/request-tracker3.2/INSTALL.Debian

# THE BASICS:

Set($rtname, 'rt.xeocode.com');
Set($Organization, 'xeocode.com');

Set($CorrespondAddress , 'rt at xeocode.com');
Set($CommentAddress , 'rt-comment at xeocode.com');

Set($Timezone , 'America/Montreal'); # obviously choose what suits you

# THE DATABASE:

Set($DatabaseType, 'Pg'); # e.g. Pg or mysql

# These are the settings we used above when creating the RT database,
# you MUST set these to what you chose in the section above.

Set($DatabaseUser , 'rt');
Set($DatabasePassword , 'rt');
Set($DatabaseName , 'rt');

# THE WEBSERVER:

Set($WebPath , "/");
Set($WebBaseURL , "http://rt.xeocode.com");

1;




-- 
greg




More information about the rt-users mailing list