1 eff881ea 2022-01-06 op #!/usr/bin/env perl
7 eff881ea 2022-01-06 op my $path = $ENV{'PATH_INFO'};
8 eff881ea 2022-01-06 op my $script_path = $ENV{'SCRIPT_NAME'};
9 eff881ea 2022-01-06 op my $server_name = $ENV{'SERVER_NAME'};
12 eff881ea 2022-01-06 op my ($code, $meta) = @_;
13 eff881ea 2022-01-06 op print "$code $meta\r\n";
14 eff881ea 2022-01-06 op if ($code != 20) {
19 eff881ea 2022-01-06 op if (! defined($path) || $path eq '') {
20 eff881ea 2022-01-06 op reply 20, 'text/gemini';
24 eff881ea 2022-01-06 op Append a clbin.com URL to see it via your preferred gemini browser!
26 eff881ea 2022-01-06 op For example: gemini://${server_name}${script_path}/clbin.com/XYZ
33 eff881ea 2022-01-06 op # trim initial slash so we have only the hostname
34 eff881ea 2022-01-06 op $path =~ s,^/,,;
36 eff881ea 2022-01-06 op # implement multiple bins eventually...
37 eff881ea 2022-01-06 op if ($path =~ m,^clbin.com/.*,) {
38 598f3ad9 2022-01-06 op reply 20, 'text/plain';
39 eff881ea 2022-01-06 op exec 'curl', 'https://'.$path;
41 eff881ea 2022-01-06 op reply 59, 'bin not supported';