Index: [Article Count Order] [Thread]

Date: Tue, 27 Aug 2002 00:42:57 +0900 (JST)
From: Takeshi Honda <moecho21@yahoo.co.jp>
Subject: [webrickja:42] Re: 画像や css,javascript を使うには
To: webrickja@notwork.org
Message-Id: <20020826154257.63121.qmail@web301.mail.yahoo.co.jp>
In-Reply-To: <m31y8lu01o.wl@edwin.mva.biglobe.ne.jp>
X-Mail-Count: 00042

Gotokenさん、咳さん、ありがとうございます。
早速試してみます。

 --- m_seki@mva.biglobe.ne.jp からのメッセージ:
> 
> 
> 咳です。眠いぃ。
> 
> > > 画像が表示されません。
> > > また、javascriptファイルも読み込まれません。
> > > リンクも、
> > > <A
> HREF="http://localhost:6613/link.html">link</A>
> > > のように絶対パスで指定すれば遷移できますが、
> > > 相対パスだと遷移できません。
> > 
> > TofuSession は FileHandler
> のサブクラスではないから検索しな
> > いというのが理由です。
> > 
> > 要するに「ある path prefix
> 以下をセッション管理したい」とい
> >
> うことですね。どう書くのがスマートなんだろ。咳さーん
> 
> いろいろ試したのですが、みんな大変でイマイチです。
> 
> もっとシンプルにこんな風にしてみました。
> FileHandlerをもう一つ登録してます。
> 
> /hello/がDivのページ、/hello/f/*
> が静的なページです。
> view.erbからは "f/ファイル名"
> でファイルにアクセスできます。
> 
> 
> http://hostname/hello/foo.html が foo.html
> を返したいのか、
> それとも/foo.htmlという情報を元に動的なページを返した
いのか、
> アプリケーションによって違うので、一般的な解はないよう
に思います。
> 
> 
> 私がDivから静的なファイルを参照する時は、相対パスは使
わないかも。
> 
> 
> 
> # server.rb
> require 'webrick';
> include WEBrick;
> require 'tofu/tofulet';
> require 'servlet';
> require 'getopts'
> 
> logger = Log::new($stderr, Log::DEBUG);
> dir = File::dirname(File::expand_path(__FILE__));
> 
> s = HTTPServer.new(:Port => 6613,
> 		   :AddressFamily => Socket::AF_INET,
> 		   :BindAddress => ENV['HOSTNAME'], 
> 		   :Logger => logger,
> 		   :DocumentRoot   => $OPT_r || dir);
> 
> s.mount("/hello/f/", HTTPServlet::FileHandler, dir +
> '/hello/', nil);
> 
> bartender = Tofu::Bartender.new(HelloServlet);
> s.mount("/hello/", Tofulet, bartender);
> 
> trap("INT"){ s.shutdown }
> s.start;
> 
> 
> 
> # view.erb
> <html>
> <head>
> <title>WEBrick Div Test</title>
> <LINK href="master.css" rel="stylesheet"
> type="text/css">
> <SCRIPT language="JavaScript"
> SRC="f/master.js"></SCRIPT>
> </head>
> <body>
> <h1>Hello World!!</h1>
> <IMG src="f/test.jpg" onclick="func();">
> <A HREF="f/link.html">link</A>
> </body>
> </html>
> 

__________________________________________________
Do You Yahoo!?
Yahoo! BB is Broadband by Yahoo!  http://bb.yahoo.co.jp/