diff --git a/contrib/Uwsgi.pm b/contrib/Uwsgi.pm index 62d135e3..31b0466e 100644 --- a/contrib/Uwsgi.pm +++ b/contrib/Uwsgi.pm @@ -17,7 +17,15 @@ sub new { sub run { my ($self, $app) = @_; - my $server = IO::Socket::INET->new(LocalPort => $self->{port}, LocalAddr => $self->{host}, Listen => 100, ReuseAddr => 1); + my $server ; + + + if ($ENV{'UWSGI_FD'}) { + $server = IO::Socket::UNIX->new_from_fd($ENV{'UWSGI_FD'}); + } + else { + $server = IO::Socket::INET->new(LocalPort => $self->{port}, LocalAddr => $self->{host}, Listen => 100, ReuseAddr => 1); + } while ( my $client = $server->accept ) {