It is a problem with Mason and links, I think. Easiest fix is to not use a link, and either reconfigure with prefix /opt/opt.CORE/rt-3.8/rhel5 or, move the rt3.8 directory to /usr/site/rt-3.8From: rt-users-bounces@lists.bestpractical.com [mailto:rt-users-bounces@lists.bestpractical.com] On Behalf Of Susan McClure
Sent: Tuesday, September 15, 2009 8:28 PM
To: rt-users@lists.bestpractical.com
Cc: smcclure@rice.edu
Subject: Re: [rt-users] [rt-user] PATCH: RT.pm.in for MasonComponentRoot
Was this ever resolved or determined to be a bug?
I am experiencing the same thing, installing RT 3.8.4, but when I edit my lib/RT.pm file to make the Mason components absolute paths, I still have the error:
[Tue Sep 15 19:17:32 2009] [info] Server: Apache/2.2.3, Interface:
mod_ssl/2.2.3, Library: OpenSSL/0.9.8e-fips-rhel5 [Tue Sep 15 19:17:32 2009] [notice] Apache/2.2.3 (Red Hat) configured – resuming normal operations [Tue Sep 15 19:17:32 2009] [info] Server built: Jul 15 2009 09:02:25 [Tue Sep 15 19:17:32 2009] [debug] prefork.c(991): AcceptMutex: sysvsem
(default: sysvsem)
[Wed Sep 16 00:17:50 2009] [warning]: [Mason] Cannot resolve file to
component: /usr/site/rt-3.8/share/html/index.html (is file outside component root?) at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm line 852.
(/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm:852)
I configured with:
./configure --prefix=/usr/site/rt-3.8 --with-db-type=Pg --with-db-dba=postgres --with-db-database=rt38 --with-web-user=cwis --with-web-group=cwis --with-web-handler=modperl2 --with-apachectl=/usr/sbin --enable-gd --enable-graphviz --enable-gpg ========================
prefix /usr/site/rt-3.8 resolves to absolute path:
/opt/opt.CORE/rt-3.8/rhel5
So I changed my lib/RT.pm to have:
… lib/RT.pm …
…
END BPS TAGGED BLOCK }}}
use strict;
use warnings;
package RT;
use File::Spec ();
use Cwd ();
use vars qw($Config $System $SystemUser $Nobody $Handle $Logger
$_INSTALL_MODE);
our $VERSION = ‘3.8.4’;
#our $BasePath = ‘/usr/site/rt-3.8/’;
our $BasePath = ‘/opt/opt.CORE/rt-3.8/rhel5/’; our $EtcPath = ‘etc’;
our $BinPath = ‘bin’; our $SbinPath = ‘sbin’; our $VarPath = ‘var’;
our $LocalPath = ‘local’;
our $LocalEtcPath = ‘local/etc’;
our $LocalLibPath = ‘local/lib’;
our $LocalLexiconPath = ‘local/po’;
our $LocalPluginPath = $LocalPath.“/plugins”;
$MasonComponentRoot is where your rt instance keeps its mason html
files #our $MasonComponentRoot = ‘share/html’; our
$MasonComponentRoot = ‘/opt/opt.CORE/rt-3.8/rhel5/share/html’;
$MasonLocalComponentRoot is where your rt instance keeps its
site-local # mason html files.
#our $MasonLocalComponentRoot = ‘local/html’; our
$MasonLocalComponentRoot = ‘/opt/opt.CORE/rt-3.8/rhel5/local/html’;
$MasonDataDir Where mason keeps its datafiles #our $MasonDataDir =
‘var/mason_data’; our $MasonDataDir =
‘/opt/opt.CORE/rt-3.8/rhel5/var/mason_data’;
RT needs to put session data (for preserving state between
connections # via the web interface) #our $MasonSessionDir =
‘var/session_data’; our $MasonSessionDir =
‘/opt/opt.CORE/rt-3.8/rhel5/var/session_data’;
unless ( File::Spec->file_name_is_absolute($EtcPath) ) {
if BasePath exists and is absolute, we won’t infer it from
$INC{‘RT.pm’}.
otherwise RT.pm will make src dir(where we configure RT) be the
BasePath # instead of the --prefix one
unless ( -d $BasePath &&
File::Spec->file_name_is_absolute($BasePath) )
my $pm_path = ( File::Spec->splitpath( $INC{‘RT.pm’} ) )[1];
# need rel2abs here is to make sure path is absolute, since
$INC{‘RT.pm’}
# is not always absolute
$BasePath =
File::Spec->rel2abs(
File::Spec->catdir( $pm_path, File::Spec->updir ) );
}
$BasePath = Cwd::realpath( $BasePath );
for my $path ( qw/EtcPath BinPath SbinPath VarPath LocalPath
LocalEtcPath
LocalLibPath LocalLexiconPath LocalPluginPath
MasonComponentRoot MasonLocalComponentRoot MasonDataDir
MasonSessionDir/ ) {
no strict ‘refs’;
# just change relative ones
$$path = File::Spec->catfile( $BasePath, $$path )
unless File::Spec->file_name_is_absolute( $$path );
}
}
=head1 NAME
RT - Request Tracker
=head1 SYNOPSIS
A fully featured request tracker package
=head1 DESCRIPTION
=head2 INITIALIZATION
:
=== perl version =====
root@rt2:/usr/site/rt-3.8/lib> /usr/bin/perl -V Summary of my perl5
(revision 5 version 8 subversion 8) configuration:
Platform:
osname=linux, osvers=2.6.18-128.1.10.el5,
archname=x86_64-linux-thread-multi
uname=‘linux ls20-bc2-13.build.redhat.com 2.6.18-128.1.10.el5 #1
smp wed apr 29 13:53:08 edt 2009 x86_64 x86_64 x86_64 gnulinux ’
config_args=’-des -Doptimize=-O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
–param=ssp-buffer-size=4 -m64 -mtune=generic -Dversion=5.8.8
-Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Red
Hat, Inc. -Dinstallprefix=/usr -Dprefix=/usr -Dlibpth=/usr/local/lib64
/lib64 /usr/lib64 -Dprivlib=/usr/lib/perl5/5.8.8
-Dsitelib=/usr/lib/perl5/site_perl/5.8.8
-Dvendorlib=/usr/lib/perl5/vendor_perl/5.8.8
-Darchlib=/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi
-Dsitearch=/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi
-Dvendorarch=/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-mu
lti -Darchname=x86_64-linux-thread-multi -Dvendorprefix=/usr
-Dsiteprefix=/usr -Duseshrplib -Dusethreads -Duseithreads
-Duselargefiles -Dd_dosuid -Dd_semctl_semun -Di_db -Ui_ndbm -Di_gdbm
-Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dinstallusrbinperl=n
-Ubincompat5005 -Uversiononly -Dpager=/usr/bin/less -isr
-Dd_gethostent_r_proto -Ud_endhostent_r_proto -Ud_sethostent_r_proto
-Ud_endprotoent_r_proto -Ud_setprotoent_r_proto -Ud_endservent_r_proto
-Ud_setservent_r_proto -Dinc_version_list=5.8.7 5.8.6 5.8.5
-Dscriptdir=/usr/bin’
hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=define use64bitall=define uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc=‘gcc’, ccflags =‘-D_REENTRANT -D_GNU_SOURCE
-fno-strict-aliasing -pipe -Wdeclaration-after-statement
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-I/usr/include/gdbm’,
optimize=‘-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
-fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic’,
cppflags=‘-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe
-Wdeclaration-after-statement -I/usr/local/include -I/usr/include/gdbm’
ccversion=‘’, gccversion=‘4.1.2 20080704 (Red Hat 4.1.2-44)’,
gccosandvers=‘’
intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype=‘long’, ivsize=8, nvtype=‘double’, nvsize=8, Off_t=‘off_t’,
lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld=‘gcc’, ldflags =‘’
libpth=/usr/local/lib64 /lib64 /usr/lib64
libs=-lresolv -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
perllibs=-lresolv -lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
libc=, so=so, useshrplib=true, libperl=libperl.so
gnulibc_version=‘2.5’
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=‘-Wl,-E
-Wl,-rpath,/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE’
cccdlflags=‘-fPIC’, lddlflags=‘-shared -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
–param=ssp-buffer-size=4 -m64 -mtune=generic’
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT
PERL_MALLOC_WRAP USE_64_BIT_ALL USE_64_BIT_INT
USE_ITHREADS USE_LARGE_FILES USE_PERLIO
USE_REENTRANT_API
Built under linux
Compiled at Jul 2 2009 05:49:38
@INC:
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.8
/usr/lib/perl5/site_perl
/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.8
/usr/lib/perl5/vendor_perl
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi
/usr/lib/perl5/5.8.8
====== httpd version info ============
root@rt2:/usr/site/rt-3.8/lib> /usr/sbin/httpd -V Server version:
Apache/2.2.3
Server built: Jul 15 2009 09:02:25
Server’s Module Magic Number: 20051115:3 Server loaded: APR 1.2.7,
APR-Util 1.2.7 Compiled using: APR 1.2.7, APR-Util 1.2.7
Architecture: 64-bit
Server MPM: Prefork
threaded: no
forked: yes (variable process count)
Server compiled with…
-D APACHE_MPM_DIR=“server/mpm/prefork”
-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
SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D APR_HAS_OTHER_CHILD -D
AP_HAVE_RELIABLE_PIPED_LOGS -D DYNAMIC_MODULE_LIMIT=128 -D
HTTPD_ROOT=“/etc/httpd”
-D SUEXEC_BIN=“/usr/sbin/suexec”
-D DEFAULT_PIDLOG=“logs/httpd.pid”
-D DEFAULT_SCOREBOARD=“logs/apache_runtime_status”
-D DEFAULT_LOCKFILE=“logs/accept.lock”
-D DEFAULT_ERRORLOG=“logs/error_log”
-D AP_TYPES_CONFIG_FILE=“conf/mime.types”
-D SERVER_CONFIG_FILE=“conf/httpd.conf”
Thanks for any help you can provide.
Susie
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users
Community help: http://wiki.bestpractical.com Commercial support: sales@bestpractical.com
Discover RT’s hidden secrets with RT Essentials from O’Reilly Media.
Buy a copy at http://rtbook.bestpractical.com
This e-mail message is intended only for the personal use of the recipient(s) named above. If you are not an intended recipient, you may not review, copy or distribute this message. If you have received this communication in error, please notify the Hearst Service Center (cadmin@hearstsc.com) immediately by email and delete the original message.