Perlbal
view release on metacpan or search on metacpan
1.80: 2012-02-26
-- FLV streaming plugin (Gosuke Miyashita <gosukenator@gmail.com>)
-- New Throttle plugin (Adam Thomason <thomason@reticulatedsplines.net>)
-- Force keepalives off when we haven't finished reading a request body, but we
are already sending a response. (Jonathan Steinert <hachi@kuiki.net>)
-- Add support for Content-MD5 checking on PUT requests to web server services.
(Eric Wong <normalperson@yhbt.net>)
-- Include an XFFExtras plugin that can add X-Forwarded-Port and X-Forwarded-Proto
lib/Perlbal/Manual/Plugins.pod view on Meta::CPAN
Simple plugin demonstrating how to create an add-on service for Perlbal using the plugin infrastructure.
=item * L<Perlbal::Plugin::ExpandSSL>
Add a custom header according to the SSL of a service.
=item * L<Perlbal::Plugin::FlvStreaming> (Perlbal core)
Enable FLV streaming with reverse proxy.
=item * L<Perlbal::Plugin::ForwardedFor>
Rename the X-Forwarded-For header in Perlbal.
=item * L<Perlbal::Plugin::Highpri> (Perlbal core)
Makes some requests high priority.
lib/Perlbal/Plugin/FlvStreaming.pm view on Meta::CPAN
=head1 NAME
Perlbal::Plugin::FlvStreaming - Enable FLV streaming with reverse proxy
=head1 DESCRIPTION
This plugin enable FLV streaming by modifying headers and prepending
FLV header to the body.
=head1 SYNOPSIS
LOAD FlvStreaming
CREATE SERVICE flv_proxy
SET role = reverse_proxy
SET plugins = FlvStreaming
ENABLE flv_proxy
lib/Perlbal/Plugin/FlvStreaming.pm view on Meta::CPAN
use URI;
use URI::QueryParam;
my $FLV_HEADER = 'FLV' . pack('CCNN', 1, 1, 9, 9);
sub load { }
sub register {
my ($class, $svc) = @_;
unless ($svc && $svc->{role} eq "reverse_proxy") {
die "You can't load the flvstreaming plugin on a service not of role reverse_proxy.\n";
}
$svc->register_hook('FlvStreaming', 'start_proxy_request', \&start_proxy_request);
$svc->register_hook('FlvStreaming', 'modify_response_headers', \&modify_response_headers);
$svc->register_hook('FlvStreaming', 'prepend_body', \&prepend_body);
return 1;
}
sub start_proxy_request {
( run in 0.911 second using v1.01-cache-2.11-cpan-4d50c553e7e )