[Catalyst] Help! Need help deploying app to Apache

Mesdaq, Ali amesdaq at websense.com
Wed Sep 17 18:25:57 BST 2008


Did you try also looking at the apache error log? Might have useful information in there about file paths or permissions

Thanks,
------------------------------------------
Ali Mesdaq (CISSP, GIAC-GREM)
Sr. Security Researcher
Websense Security Labs
http://www.WebsenseSecurityLabs.com
------------------------------------------


-----Original Message-----
From: sardaukar_siet [mailto:sardaukar.siet at gmail.com]
Sent: Wednesday, September 17, 2008 9:47 AM
To: catalyst at lists.scsys.co.uk
Subject: [Catalyst] Help! Need help deploying app to Apache


Hello all.

I have a Catalyst app running fine with the _server.pl script, but trying to
deploy it with mod_perl for Apache 2 has proven itself impossible... %-|

Here is the file I include at the end of my httpd.conf:

-----------------------------------------------------------------
PerlOptions +GlobalRequest
PerlSwitches -I/home/LookingGlass/LookingGlass/lib/
PerlSwitches -I/home/LookingGlass/LookingGlass/lib/Net
PerlModule LookingGlass


<Location />
  SetHandler          modperl
  PerlResponseHandler LookingGlass
</Location>

<VirtualHost *>
        DocumentRoot /home/LookingGlass/LookingGlass/lib/

        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>

        <Directory /home/LookingGlass/LookingGlass/root/src/ >
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ErrorLog /var/log/httpd/LookingGlass_error.log

        LogLevel warn

        CustomLog /var/log/httpd/LookingGlass_access.log combined
        ServerSignature On

</VirtualHost>
-----------------------------------------------------------------

And here is a typical error msg when going to https://localhost/:
-----------------------------------------------------------------
Request

bless({
  action           => "index",
  address          => "10.137.9.24",
  arguments        => [],
  base             => bless(do{\(my $o = "https://lgdeploy/")},
"URI::https"),
  body_parameters  => {},
  captures         => [],
  cookies          => {
                        lookingglass_session => bless({
                              name  => "lookingglass_session",
                              path  => "/",
                              value =>
["e56ac9d37cac79e47e1c6de681dc67313b0da6e0"],
                            }, "CGI::Simple::Cookie"),
                      },
  headers          => bless({
                        "accept" =>
"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
                        "accept-charset" =>
"ISO-8859-1,utf-8;q=0.7,*;q=0.7",
                        "accept-encoding" => "gzip,deflate",
                        "accept-language" => "en-us,en;q=0.5",
                        connection => "keep-alive",
                        cookie =>
"lookingglass_session=e56ac9d37cac79e47e1c6de681dc67313b0da6e0",
                        host => "lgdeploy",
                        "keep-alive" => 300,
                        "user-agent" => "Mozilla/5.0 (X11; U; Linux i686;
en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1",
                      }, "HTTP::Headers"),
  hostname         => undef,
  match            => "",
  method           => "GET",
  parameters       => {},
  path             => "",
  protocol         => "HTTP/1.1",
  query_parameters => {},
  secure           => 1,
  uploads          => {},
  uri              => bless(do{\(my $o = "https://lgdeploy/")},
"URI::https"),
  user             => undef,
}, "Catalyst::Request")

Response

bless({
  body    => "",
  cookies => {},
  headers => bless({
               "content-type" => "text/html; charset=utf-8",
               "x-catalyst"   => "5.7014",
             }, "HTTP::Headers"),
  status  => 200,
}, "Catalyst::Response")

Stash

{}

Config

do {
  my $a = {
    "Plugin::Authentication" => {},
    "Plugin::ConfigLoader" => {},
    debug => {
          ignore_classes => [
                              "DBIx::Class::ResultSource::Table",
                              "DBIx::Class::ResultSourceHandle",
                              "DateTime",
                            ],
          scrubber_func  => sub { "???" },
        },
    form => {},
    home => "/home/LookingGlass/LookingGlass",
    name => "LookingGlass",
    root => bless({
          dirs => ["", "home", "LookingGlass", "LookingGlass", "root"],
          file_spec_class => undef,
          volume => "",
        }, "Path::Class::Dir"),
    session => {
          cookie_name    => "lookingglass_session",
          expires        => 7200,
          namespace      => "",
          storage        => "/tmp/lookingglass/session/data",
          verify_address => 0,
        },
    static => {
          debug => 1,
          dirs => [],
          ignore_dirs => [],
          ignore_extensions => ["tmpl", "tt", "tt2", "html", "xhtml"],
          include_path => ['fix'],
          mime_types => {},
          mime_types_obj => bless({}, "MIME::Types"),
          no_logs => 1,
        },
  };
  $a->{static}{include_path}[0] = $a->{root};
  $a;
}

Session ID

"e56ac9d37cac79e47e1c6de681dc67313b0da6e0"

Session

{
  __created => 1221670415,
  __updated => 1221671167,
  command_detail => { config => { type => "normal" }, name => "show diag",
param_list => [] },
  user => { groups => [{ id => 1, name => "Admin" }], id => 1, name =>
"Admin" },
}
-----------------------------------------------------------------

Here is Apache's ssl.conf:
-----------------------------------------------------------------
LoadModule ssl_module modules/mod_ssl.so
Listen 443
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl    .crl
SSLPassPhraseDialog  builtin
SSLSessionCache         shmcb:/var/cache/mod_ssl/scache(512000)
SSLSessionCacheTimeout  300
SSLMutex default
SSLRandomSeed startup file:/dev/urandom  256
SSLRandomSeed connect builtin
SSLCryptoDevice builtin
<VirtualHost _default_:443>
ErrorLog logs/ssl_error_log
TransferLog logs/ssl_access_log
LogLevel warn
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
    SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
    SSLOptions +StdEnvVars
</Directory>

SetEnvIf User-Agent ".*MSIE.*" \
         nokeepalive ssl-unclean-shutdown \
         downgrade-1.0 force-response-1.0

CustomLog logs/ssl_request_log \
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

</VirtualHost>
-----------------------------------------------------------------

And here is what I usually get in the server script debug output:

[info] *** Request 1 (0.167/s) [30473] [Wed Sep 17 18:23:35 2008] ***
[debug] "GET" request for "/" from "10.137.9.24"
[debug] Rendering template "index.tt"
[error] Couldn't render template "file error - index.tt: not found"
[error] Couldn't render template "file error - index.tt: not found"
[info] Request took 0.069101s (14.472/s)
.----------------------------------------------------------------+-----------.
| Action                                                         | Time
|
+----------------------------------------------------------------+-----------+
| /index                                                         | 0.000914s
|
| /end                                                           | 0.008844s
|
|  -> LookingGlass::View::HTML->process                          | 0.004835s
|
'----------------------------------------------------------------+-----------'



Is there a way to know what path Catalyst is looking for the file? What was
the precise error? Whatever info more you need, I am able to provide. Please
help me...

Thanks for your time reading this,

Bruno
--
View this message in context: http://www.nabble.com/Help%21-Need-help-deploying-app-to-Apache-tp19536440p19536440.html
Sent from the Catalyst Web Framework mailing list archive at Nabble.com.


_______________________________________________
List: Catalyst at lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


 Protected by Websense Messaging Security -- www.websense.com 



More information about the Catalyst mailing list