New install of rt 4.0.0 -- problem with cookies routine?

Hello list,

Problem:

  • I receive the following error (within html and body tags) when
    accessing my new rt installation:
    “Can’t call method “as_string” on an undefined value at
    /opt/rt4/sbin/…/lib/RT/Interface/Web.pm line 717.”

  • Checking line 717:
    $ awk ‘NR == 717’ /opt/rt4/lib/RT/Interface/Web.pm
    $HTML::Mason::Commands::r->err_headers_out->{‘Set-Cookie’} =
    $cookie->as_string;

Seems odd to me, but not sure how to fix it.

Software used:

  • RT 4.0.0
  • CPAN 1.9600
  • PERL 5.12.3
  • mod_perl/2.0.5 and psgi/plack
  • I may try something other than psgi/plack as it’s completely new to
    me and mod_perl2 seems to use too much memory anyway.
  • Apache 2.2.17

RT_SiteConfig.pm:
Set($WebPath, ‘/rt’);
Set($LogToSyslog, ‘debug’);

Apache virtual host config:
<VirtualHost *:80>
# /rt ######################################################################
Alias /rt /opt/rt4/share/html
<Directory /opt/rt4/share/html>
#Options FollowSymLinks
Order allow,deny
Allow from all

<Location /rt>
    Order allow,deny
    Allow from all

    AddDefaultCharset UTF-8

    SetHandler perl-script
    PerlResponseHandler Plack::Handler::Apache2
    PerlSetVar psgi_app /opt/rt4/sbin/rt-server
</Location>

<Perl>
    use Plack::Handler::Apache2;
    Plack::Handler::Apache2->preload("/opt/rt4/sbin/rt-server");
</Perl>

-j

Hi,

Thanks for the report. Try change
350aa5538eb4fc0e43c99083b4255d0294edc4a2 [1]. Don’t forget to
stop/start server.

[1] https://github.com/bestpractical/rt/commit/350aa5538eb4fc0e43c99083b4255d0294edc4a2On Sun, May 22, 2011 at 3:50 PM, Justin Richard velusip@gmail.com wrote:

Hello list,

Problem:

  • I receive the following error (within html and body tags) when
    accessing my new rt installation:
    “Can’t call method “as_string” on an undefined value at
    /opt/rt4/sbin/…/lib/RT/Interface/Web.pm line 717.”

  • Checking line 717:
    $ awk ‘NR == 717’ /opt/rt4/lib/RT/Interface/Web.pm
    $HTML::Mason::Commands::r->err_headers_out->{‘Set-Cookie’} =
    $cookie->as_string;

Seems odd to me, but not sure how to fix it.

Software used:

  • RT 4.0.0
  • CPAN 1.9600
  • PERL 5.12.3
  • mod_perl/2.0.5 and psgi/plack
  • I may try something other than psgi/plack as it’s completely new to
    me and mod_perl2 seems to use too much memory anyway.
  • Apache 2.2.17

RT_SiteConfig.pm:

Set($WebPath, ‘/rt’);
Set($LogToSyslog, ‘debug’);

Apache virtual host config:

<VirtualHost *:80>

/rt

Alias /rt /opt/rt4/share/html
<Directory /opt/rt4/share/html>
#Options FollowSymLinks
Order allow,deny
Allow from all

<Location /rt>
Order allow,deny
Allow from all

   AddDefaultCharset UTF-8

   SetHandler perl-script
   PerlResponseHandler Plack::Handler::Apache2
   PerlSetVar psgi_app /opt/rt4/sbin/rt-server
use Plack::Handler::Apache2; Plack::Handler::Apache2->preload("/opt/rt4/sbin/rt-server");

-j

Best regards, Ruslan.

Hi,

Also, please, report back with results. We can not reproduce problem.
Stack trace may help.On Sun, May 22, 2011 at 10:11 PM, Ruslan Zakirov ruz@bestpractical.com wrote:

Hi,

Thanks for the report. Try change
350aa5538eb4fc0e43c99083b4255d0294edc4a2 [1]. Don’t forget to
stop/start server.

[1] cookie's value must be defined, empty string is · bestpractical/rt@350aa55 · GitHub

On Sun, May 22, 2011 at 3:50 PM, Justin Richard velusip@gmail.com wrote:

Hello list,

Problem:

  • I receive the following error (within html and body tags) when
    accessing my new rt installation:
    “Can’t call method “as_string” on an undefined value at
    /opt/rt4/sbin/…/lib/RT/Interface/Web.pm line 717.”

  • Checking line 717:
    $ awk ‘NR == 717’ /opt/rt4/lib/RT/Interface/Web.pm
    $HTML::Mason::Commands::r->err_headers_out->{‘Set-Cookie’} =
    $cookie->as_string;

Seems odd to me, but not sure how to fix it.

Software used:

  • RT 4.0.0
  • CPAN 1.9600
  • PERL 5.12.3
  • mod_perl/2.0.5 and psgi/plack
  • I may try something other than psgi/plack as it’s completely new to
    me and mod_perl2 seems to use too much memory anyway.
  • Apache 2.2.17

RT_SiteConfig.pm:

Set($WebPath, ‘/rt’);
Set($LogToSyslog, ‘debug’);

Apache virtual host config:

<VirtualHost *:80>

/rt

Alias /rt /opt/rt4/share/html
<Directory /opt/rt4/share/html>
#Options FollowSymLinks
Order allow,deny
Allow from all

<Location /rt>
Order allow,deny
Allow from all

   AddDefaultCharset UTF-8

   SetHandler perl-script
   PerlResponseHandler Plack::Handler::Apache2
   PerlSetVar psgi_app /opt/rt4/sbin/rt-server
use Plack::Handler::Apache2; Plack::Handler::Apache2->preload("/opt/rt4/sbin/rt-server");

-j


Best regards, Ruslan.

Best regards, Ruslan.

[1] cookie's value must be defined, empty string is · bestpractical/rt@350aa55 · GitHub

Thank you! I matched that minor change, reloaded the psgi instance,
no more cookie error. Now I see the login page at http://mydomain/rt/

Problem 2:

When I try to click login (and submit my POST data) I get a blank
response. I checked apache access and error logs and see the
following relevant lines:

httpd/error_log:
192.168.1.1 - - [22/May/2011:14:10:52 -0700] “POST
/rt/NoAuth/Login.html HTTP/1.1” 200 -

httpd/access_log:
[Sun May 22 21:10:53 2011] [info]: Successful login for root from
192.168.1.1 (/opt/rt4/sbin/…/lib/RT/Interface/Web.pm:644)

I’m sure more information would be helpful, but I’m not sure how to
run a trace or enable additional logging. I will get back after more
google searching…

-j