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