server.document-root = "/path/to/root" server.port = 80
server.document-root = "/path/to/root" # server.port = 80
fastcgi.server = (
"/" => (
( "host" => "192.168.0.2", "port" => 3000 ),
( "host" => "192.168.0.3", "port" => 3000 ),
),
)
fastcgi.server = (
"" => ((
"bin-path" => "../MyApp/script/myapp_fastcgi.pl",
"socket" => "/tmp/myapp_fastcgi.socket",
"max-procs" => 1,
))
)
./script/myapp_fastcgi.pl
でfastcgiプロセスをたちあげ、
fastcgi.server = (
"" => ((
"socket" => "/tmp/myapp_fastcgi.socket",
))
)
fastcgi.server = (
"" => ((
"host" => "10.0.0.2",
"port" => 8080,
))
)
$ catalyst.pl MyApp created "MyApp" created "MyApp/script" created "MyApp/lib" created "MyApp/root"
先ほどの例では、どのパスにアクセスしてもfastcgiが呼ばれてしまう。
server.document-root = "../MyApp/root"
alias.url += ( "/script/" => "../MyApp/script/", )
setenv.add-environment = (
"SCRIPT_NAME" => "/",
)
url.rewrite-once = (
"^/(?!favicon\.ico$|js/|css/|images?/|static/)(.*)"
=> "/script/myapp_fastcgi.pl/$1",
)
fastcgi.server = (
"/script/myapp_fastcgi.pl" => ((
"socket" => "/tmp/myapp_fastcgi.socket",
))
)
server.document-root = "../MyApp/root"
setenv.add-environment = (
"SCRIPT_NAME" => "/",
)
url.rewrite-once = (
"^/(?!favicon\.ico$|js/|css/|images?/|static/)(.*)"
=> "/myapp/$1",
)
fastcgi.server = (
"/myapp" => ((
"socket" => "/tmp/myapp_fastcgi.socket",
"check-local" => "disable",
))
)
server.document-root = "../MyApp/root"
setenv.add-environment = (
"SCRIPT_NAME" => "/",
)
server.error-handler-404 = "/myapp"
fastcgi.server = (
"/myapp" => ((
"socket" => "/tmp/myapp_fastcgi.socket",
"check-local" => "disable",
)) )
server.document-root = "../MyApp/root"
alias.url += ( "/script/" => "../MyApp/script/", )
setenv.add-environment = (
"SCRIPT_NAME" => "/",
)
url.rewrite-once = (
"^/(?!favicon\.ico$|js/|css/|images?/|static/)(.*)"
=> "/script/myapp_fastcgi.pl/$1",
)
fastcgi.server = (
"/script/myapp_fastcgi.pl" => ((
"socket" => "/tmp/myapp_fastcgi.socket",
))
)
server.document-root = "../MyApp/root"
setenv.add-environment = (
"SCRIPT_NAME" => "/",
)
url.rewrite-once = (
"^/(?!favicon\.ico$|js/|css/|images?/|static/)(.*)"
=> "/myapp/$1",
)
fastcgi.server = (
"/myapp" => ((
"socket" => "/tmp/myapp_fastcgi.socket",
"check-local" => "disable",
))
)
server.document-root = "../MyApp/root"
setenv.add-environment = (
"SCRIPT_NAME" => "/",
)
server.error-handler-404 = "/myapp"
fastcgi.server = (
"/myapp" => ((
"socket" => "/tmp/myapp_fastcgi.socket",
"check-local" => "disable",
)) )
include_shell
"/path/to/MyApp/script/myapp_lighttpd.pl -p"
http://example.com/ で使いたい!
$HTTP["host"] =~ "^(www\.)?example\.com$" {
include_shell
"/path/to/MyApp/script/myapp_lighttpd.pl -p"
}
http://example.com/myapp/ で使いたい!
$HTTP["host"] =~ "^(www\.)?example\.com$" {
server.document-root = "/path/to/root"
include_shell
"/path/to/MyApp/script/myapp_lighttpd.pl \
--root /myapp -p"
}
mod_fastcgi や mod_proxy で lighty に
X-Sendfile: /path/to/file
というヘッダを返すとレスポンスBodyをそのfileで置き換えてくれる機能。
...mod_fastcgi や mod_proxy で lighty に
X-Sendfile: /path/to/file
というヘッダを返すとレスポンスBodyをそのfileで置き換えてくれる機能。
Catalyst::Plugin::XSendfile を使うと
$c->res->sendfile( '/path/to/file' );
でOK!
mod_proxy 経由で lighty に
X-Rewrite-Host: 10.0.0.3 X-Rewrite-URI: /path/to/file
というヘッダを返すとするとレスポンスBodyを http://10.0.0.3/path/to/file の内容に置き換えてくれる機能。
fastcgiでは使えないみたい。