Catalyst 與 Apache 的測試環境

Catalyst FrameworkPerl 上一個蠻有名的 MVC Framework,使用 Catalyst 比較知名的站台是 Vox.com。(可以參考 How we build Vox 這一份投影片)

在正式環境下會用 FastCGI 或是 mod_perl 提供服務,但測試環境用 CGI 版本似乎是個還可以的選擇,因為改完後馬上就會生效。我記得我很久前用過 Apache + Catalyst-CGI,但是一時間找不到設定檔,只好再從頭摸起。趁這次重新摸的時候把設定檔寫到 blog 上,之後用 Google 找的時候才找的到。

.htaccess 裡這樣設定:

#
AddHandler cgi-script .sh
Options +FollowSymlinks -Indexes
#
RewriteEngine on
RewriteBase /~gslin/testbed/
RewriteCond %{REQUEST_URI} !/~gslin/testbsd/index\.sh/
RewriteRule ^(.*)$ index.sh/$1 [L]

然後 index.sh 要設成 0755:

#!/bin/sh
cd ../../hg/project
exec script/project_cgi.pl

另外 project_cgi.pl 也要設成 0755。這樣子除了靜態檔案應該都會動了。不過靜態檔案已經慢慢有習慣丟到另外一個 domain 上,所以還好...

Update:修正 .htaccess 的內容,這樣也順便修好 Catalyst 處理 static files 的部份。

Leave a Reply

Your email address will not be published. Required fields are marked *