Instead of gzipping some (mbox.gz, manifest.js.gz) responses and
leaving P::M::D to do the rest, we gzip everything ourselves,
now, so P::M::D is redundant.
If a PSGI file is not specified, L<PublicInbox::WWW> is
loaded with a default middleware stack consisting of
If a PSGI file is not specified, L<PublicInbox::WWW> is
loaded with a default middleware stack consisting of
-L<Plack::Middleware::Deflater>,
L<Plack::Middleware::ReverseProxy>, and
L<Plack::Middleware::Head>
L<Plack::Middleware::ReverseProxy>, and
L<Plack::Middleware::Head>
(ensures redirects are correct when running
behind nginx or Varnish)
(ensures redirects are correct when running
behind nginx or Varnish)
-- Plack::Middleware::Deflater deb: libplack-middleware-deflater-perl
- pkg: p5 -Plack-Middleware-Deflater
- rpm: perl-Plack-Middleware-Deflater
- (saves bandwidth on responses)
-
* highlight deb: libhighlight-perl
(for syntax highlighting with coderepo)
* highlight deb: libhighlight-perl
(for syntax highlighting with coderepo)
Net::Server
Plack
Plack::Test
Net::Server
Plack
Plack::Test
- Plack::Middleware::Deflater
Plack::Middleware::ReverseProxy
Search::Xapian
Socket6
Plack::Middleware::ReverseProxy
Search::Xapian
Socket6
my $cgit = PublicInbox::Cgit->new($pi_config);
builder {
my $cgit = PublicInbox::Cgit->new($pi_config);
builder {
- eval {
- enable 'Deflater',
- content_type => [ qw(
- text/html
- text/plain
- application/atom+xml
- )]
- };
eval { enable 'ReverseProxy' };
enable 'Head';
sub { $cgit->call($_[0]) }
eval { enable 'ReverseProxy' };
enable 'Head';
sub { $cgit->call($_[0]) }
# regular PublicInbox::WWW code:
# see comments in examples/public-inbox.psgi for more info:
mount '/' => builder {
# regular PublicInbox::WWW code:
# see comments in examples/public-inbox.psgi for more info:
mount '/' => builder {
- eval {
- enable 'Deflater',
- content_type => [ qw(
- text/html
- text/plain
- application/atom+xml
- )]
- };
eval { enable 'ReverseProxy' };
enable 'Head';
sub { $www->call($_[0]) }
eval { enable 'ReverseProxy' };
enable 'Head';
sub { $www->call($_[0]) }
$src = PublicInbox::Git->new($src) if defined $src;
builder {
$src = PublicInbox::Git->new($src) if defined $src;
builder {
- eval {
- enable 'Deflater',
- content_type => [ qw(
- text/html
- text/plain
- application/atom+xml
- )]
- };
-
# Enable to ensure redirects and Atom feed URLs are generated
# properly when running behind a reverse proxy server which
# sets the X-Forwarded-Proto request header.
# Enable to ensure redirects and Atom feed URLs are generated
# properly when running behind a reverse proxy server which
# sets the X-Forwarded-Proto request header.
builder {
mount '/u' => builder {
builder {
mount '/u' => builder {
- eval { enable 'Deflater' }; # optional
eval { enable 'ReverseProxy' }; # optional
enable 'Head';
sub { $app->call(@_) };
eval { enable 'ReverseProxy' }; # optional
enable 'Head';
sub { $app->call(@_) };
my $www = PublicInbox::WWW->new;
$www->preload;
$app = builder {
my $www = PublicInbox::WWW->new;
$www->preload;
$app = builder {
- eval {
- enable 'Deflater',
- content_type => [ qw(
- text/html
- text/plain
- application/atom+xml
- )]
- };
-
eval { enable 'ReverseProxy' };
$@ and warn
"Plack::Middleware::ReverseProxy missing,\n",
eval { enable 'ReverseProxy' };
$@ and warn
"Plack::Middleware::ReverseProxy missing,\n",
PublicInbox::WWW->preload if $ENV{MOD_PERL};
}
my $www = PublicInbox::WWW->new;
PublicInbox::WWW->preload if $ENV{MOD_PERL};
}
my $www = PublicInbox::WWW->new;
-my $have_deflater = eval { require Plack::Middleware::Deflater; 1 };
- if ($have_deflater) {
- enable 'Deflater',
- content_type => [ 'text/html', 'text/plain',
- 'application/atom+xml' ];
- }
-
# Enable to ensure redirects and Atom feed URLs are generated
# properly when running behind a reverse proxy server which
# sets the X-Forwarded-Proto request header.
# Enable to ensure redirects and Atom feed URLs are generated
# properly when running behind a reverse proxy server which
# sets the X-Forwarded-Proto request header.