From 0dd2f3907de39b28f2a5ec61a72db0bd32751b6e Mon Sep 17 00:00:00 2001 From: Tomas Cohen Arazi Date: Tue, 20 Oct 2015 22:50:47 -0300 Subject: [PATCH] Bug 7895: Test for PSGI-related env to report in about.pl This patch introduces a test for psgi/plack in %ENV and uses that data to report in the about page. To test: - On current master (without Plack), go to about.pl - Notice no mention of Plack - Apply the patch - Reload the about page => SUCCESS: No change - Enable plack, and access the about page through Plack => SUCCESS: There is a PSGI label, showing that you are running Plack - Sign off :-D Regards PS: I haven't tested the mod_perl scenario, I just grabbed the MOD_PERL env var from the docs. Signed-off-by: Jonathan Druart --- about.pl | 14 ++++++++++++-- koha-tmpl/intranet-tmpl/prog/en/modules/about.tt | 3 +++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/about.pl b/about.pl index 4c27366..01e941c 100755 --- a/about.pl +++ b/about.pl @@ -20,10 +20,10 @@ # You should have received a copy of the GNU General Public License # along with Koha; if not, see . -use strict; -use warnings; +use Modern::Perl; use CGI qw ( -utf8 ); +use List::MoreUtils qw/ any /; use LWP::Simple; use XML::Simple; use Config; @@ -65,6 +65,16 @@ $apacheVersion = `httpd2 -v 2> /dev/null` unless $apacheVersion; $apacheVersion = `httpd -v 2> /dev/null` unless $apacheVersion; my $zebraVersion = `zebraidx -V`; +# Check running PSGI env +if ( any { /(^psgi\.|^plack\.)/i } keys %ENV ) { + $template->param( + is_psgi => 1, + psgi_server => ($ENV{ PLACK_ENV }) ? "Plack ($ENV{PLACK_ENV})" : + ($ENV{ MOD_PERL }) ? "mod_perl ($ENV{MOD_PERL})" : + 'Unknown' + ); +} + # Additional system information for warnings my $prefAutoCreateAuthorities = C4::Context->preference('AutoCreateAuthorities'); my $prefBiblioAddsAuthorities = C4::Context->preference('BiblioAddsAuthorities'); diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/about.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/about.tt index 9cc69e0..c96f8da 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/about.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/about.tt @@ -48,6 +48,9 @@ MySQL version: [% mysqlVersion |html %] Apache version: [% apacheVersion |html %] + [% IF (is_psgi) %] + PSGI: [% psgi_server |html %] + [% END %] Zebra version: [% zebraVersion |html %] [% IF (errZebraConnection == 10000) %] Error Zebra server seems not to be available. Is it started? -- 2.1.0