基本上是根据http://www.masonhq.com/docs/manual/Admin.html来写的。
基本配置
在apache配置文件(httpd.conf)中写:
<Location />
SetHandler perl-script
PerlHandler HTML::Mason::ApacheHandler
</Location>
Location后面的‘/’表示所有文件都使用以下配置方案
SetHandler指定处理文件的模块,perl-script就代表用mod-perl吧。
PerlHandler进一步指定用哪个mod-perl模块处理,HTML::Mason::ApacheHandler就表示用mason了。
这样就可以用mason来处理所有网页了。
但是这样写会产生两个问题。
1.一些不适合由mason处理的文件,比如图片,也会经由mason来处理后显示。这样可能会显示错误。
2,一些文件我们可能不希望被显示。
所以,需要进行更严格的配置,来确切指定哪些文件使用mason,并且屏蔽那些不想被显示的文件。
由此产生了如下配置方案:
<LocationMatch "(\.html|\.txt|\.pl)$">
SetHandler perl-script
PerlHandler HTML::Mason::ApacheHandler
</LocationMatch>
<LocationMatch "(\.m(html|txt|pl)|dhandler|autohandler)$">
SetHandler perl-script
PerlInitHandler Apache::Constants::NOT_FOUND
</LocationMatch>
前面的配置表示只有后缀匹配了.html .txt .pl的文件由mason处理,后面的配置表示后缀为 .mhtml .mtxt .mpl的文件显示“找不到文件”。
这里在文件的后缀的第一个字母前加一个'm',来表示不希望被看到的文件。这是mason的推荐命名方法。当然其他命名方式也可以。
这样,一个mason based网站就可以正常使用了。mod-perl还有很多其他的配置参数。这些配置参数可以引入模块,指定mason的行为等等。这个以后具体说。

