1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
| | # Example legacy Apache2 configuration using CGI + mod_perl2
# Consider using Plack::Handler::Apache2 instead (see apache2_perl.conf)
# Adjust paths to your installation
ServerName "public-inbox"
ServerRoot "/var/www/cgi-bin"
DocumentRoot "/var/www/cgi-bin"
ErrorLog "/tmp/public-inbox-error.log"
PidFile "/tmp/public-inbox.pid"
Listen 127.0.0.1:8080
LoadModule perl_module /usr/lib/apache2/modules/mod_perl.so
LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so
LoadModule dir_module /usr/lib/apache2/modules/mod_dir.so
LoadModule mime_module /usr/lib/apache2/modules/mod_mime.so
TypesConfig "/dev/null"
# PerlPassEnv PATH # this is implicit
<Directory /var/www/cgi-bin>
Options +ExecCGI
AddHandler perl-script .cgi
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
# we use this hack to ensure "public-inbox.cgi" doesn't show up
# in any of our redirects:
PerlSetEnv NO_SCRIPT_NAME 1
# no need to set no rely on HOME if using this:
PerlSetEnv PI_CONFIG /home/pi/.public-inbox/config
# our public-inbox.cgi requires PATH_INFO-based URLs with minimal
# use of query parameters
DirectoryIndex public-inbox.cgi
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.* /public-inbox.cgi/$0 [L,PT]
</Directory>
|