diff options
| author | Emil Williams | 2025-08-21 00:32:48 +0000 |
|---|---|---|
| committer | Emil Williams | 2025-08-21 00:32:48 +0000 |
| commit | 658f9c0c0fcce6a6371fbdaf8f74a5ca4265c9a9 (patch) | |
| tree | 7011e66cf1a349ed78885591ab76f6dae3179e5e | |
| parent | a721871310beeb290f060511bc5ad58b2f485f35 (diff) | |
| download | gorillanest-658f9c0c0fcce6a6371fbdaf8f74a5ca4265c9a9.tar.xz gorillanest-658f9c0c0fcce6a6371fbdaf8f74a5ca4265c9a9.tar.zst | |
Immortality
| -rw-r--r-- | config.default.pl | 17 | ||||
| -rwxr-xr-x | gorillanest.pl.fcgi | 17 |
2 files changed, 20 insertions, 14 deletions
diff --git a/config.default.pl b/config.default.pl index b95d005..9fbc1a2 100644 --- a/config.default.pl +++ b/config.default.pl @@ -1,15 +1,18 @@ -# always assume anything to do with files is from project root +# always assume anything to do with files or directories is ran at project root + +# If you're using lighttpd, set this to 1 +# This disables SOCKET_FILE and lets the socket handling be externally managed +use constant BARE_REQUEST => 0; + +use constant IMMORTAL => 1; # will continue handling request after death/error use constant LOG_FILE => '/tmp/gorillanest.log'; -use constant SOCKET_FILE => '/tmp/gorillanest.socket'; use constant DB_FILE => 'gorillanest.sqlite3'; # sqlite3 +use constant SOCKET_FILE => '/tmp/gorillanest.socket'; +use constant SOCKET_MAX_CONNECTIONS => 100; + use constant TEMPLATE_ROOT => 'template'; # template directory use constant GIT_ROOT => 'git'; # git directory (~user/repo) -# If you're using lighttpd, set this to 1 -# This disables SOCKET_FILE and lets the socket handling be externally managed -use constant BARE_REQUEST => 0; - -use constant SOCKET_MAX_CONNECTIONS => 100; 1; diff --git a/gorillanest.pl.fcgi b/gorillanest.pl.fcgi index 7dc343f..afba9be 100755 --- a/gorillanest.pl.fcgi +++ b/gorillanest.pl.fcgi @@ -9,12 +9,15 @@ use FCGI; use lib '.'; BEGIN { require 'gorillanest.pl.cgi'; } -try { - open STDERR, '>', LOG_FILE or die LOG_FILE . ": $!"; - my $request = FCGI::Request( \*STDIN, \*STDOUT, \*STDERR, \%ENV, BARE_REQUEST ? 0 : FCGI::OpenSocket(SOCKET_FILE, SOCKET_MAX_CONNECTIONS)); - while($request->Accept() >= 0) { - master(); +while (1) { + try { + open STDERR, '>', LOG_FILE or die LOG_FILE . ": $!"; + my $request = FCGI::Request( \*STDIN, \*STDOUT, \*STDERR, \%ENV, BARE_REQUEST ? 0 : FCGI::OpenSocket(SOCKET_FILE, SOCKET_MAX_CONNECTIONS)); + while($request->Accept() >= 0) { + master(); + } + } catch ($error) { + info("Crashed: $error"); } -} catch ($error) { - info("Crashed: $error"); + exit 1 unless (IMMORTAL); } |
