# By default, Mason handles everything
SetHandler perl-script
PerlHandler HTML::Mason::ApacheHandler
Options Includes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
# whatever else...
# But we don't want bare autohandler or dhandler served by Apache
SetHandler perl-script
PerlInitHandler Apache::Constants::NOT_FOUND
# Nor do we want Mason touching stylesheets, javascript, or images
SetHandler default-handler
SetHandler default-handler
Options FollowSymLinks Indexes
SetHandler default-handler
####
<%init>;
# get rid of crap from parent autohandler
$m->clear_buffer();
# change content-type
$r->content_type('application/json; charset=utf-8');
# call any dhandlers, etc.
$m->call_next();
$m->flush_buffer();
# but don't go back to the parent autohandler
$m->abort();
%init>