about summary refs log tree commit homepage
path: root/examples/apache2_perl.conf
diff options
authorEric Wong <e@80x24.org>2016-02-28 23:03:52 +0000
committerEric Wong <e@80x24.org>2016-02-28 23:58:06 +0000
commit8665c69c48a88960ffb0aa6a9bacc380fa86f83d (patch)
tree96026dcb8ce1264f1b57155c9fafbc5435945dae /examples/apache2_perl.conf
parent17e9e2b0df6d445883b2822c49c971fb9abe3c0e (diff)
Plack::Handler::Apache2 exists and seems to work very well.
Diffstat (limited to 'examples/apache2_perl.conf')
1 files changed, 15 insertions, 27 deletions
diff --git a/examples/apache2_perl.conf b/examples/apache2_perl.conf
index 6615eb9f..a4721b5b 100644
--- a/examples/apache2_perl.conf
+++ b/examples/apache2_perl.conf
@@ -1,37 +1,25 @@
-# Example Apache2 configuration using mod_perl2
+# Example Apache2 configuration using Plack::Handler::Apache2
 # Adjust paths to your installation
 ServerName "public-inbox"
-ServerRoot "/var/www/cgi-bin"
-DocumentRoot "/var/www/cgi-bin"
+ServerRoot "/var/www"
+DocumentRoot "/var/www"
 ErrorLog "/tmp/public-inbox-error.log"
 PidFile "/tmp/public-inbox.pid"
 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
+# no need to set no rely on HOME if using this:
+PerlSetEnv PI_CONFIG /home/pi/.public-inbox/config
-        # we use this hack to ensure "public-inbox.cgi" doesn't show up
-        # in any of our redirects:
-        PerlSetEnv NO_SCRIPT_NAME 1
+<Location />
+        SetHandler perl-script
+        PerlResponseHandler Plack::Handler::Apache2
+        PerlSetVar psgi_app /path/to/public-inbox.psgi
-        # 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]
+# Optional, preload the application in the parent like startup.pl
+        use Plack::Handler::Apache2;
+        Plack::Handler::Apache2->preload("/path/to/public-inbox.psgi");