[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[FDclone-users:00920] Re: URLDRIVE で HTTP を HTTPS にリダイレクトされると変に



 しらいです。

In Message-Id <20100907235947.0af3b818.riki1017kazu@gmail.com>
        Rikito INAKAZU <riki1017kazu@gmail.com>さんwrites:
> 稲員です。

> >  で、稲員さんが先に示された patch では、Location: の引数に
> > scheme 無しで local path が記述された場合にアクセスに失敗し
> > てしまいます。

> なるほど。こういう Location: は全く考えていませんでした。

 RFC 的には全く不適切なのですが、実際に結構見かけるんですよ
ね。その一方で正式な筈の http:/path/to/local/file 形式は見た
ことがありません。

 あと、現状の実装では Location: で他の host に redirect し
ているケースには対応していませんので、テストの際にはご注意下
さい。
 host や port が変更されたらエラーで弾くようなコードが実装
されているようです。でも、考えてみたらそれでいいのかという気
がしてきたので、この件もちょっと検討してみます。


> nginx の方は良いのですが、apache の方はおかしな事になっています。
> まだソースを追ってはいないのですが HTML の parse に問題があるの
> かもしれません。LOG_DIR も apache の時だけおかしいのは同様です。

 何やらシンプルな一覧を吐く apache ですね。設定によるのかも
知れませんが、私の知っている限りでは apache はテーブルにして
表示してくれるんですよ。
 HTML 的な改行と見なせるタグを幾つかリストアップしてあるん
ですが、その中に <LI> が含まれていなかったため、全部まとめて
一行と見なされていたようです。
 この patch を試してみて下さい。

---- Cut Here ----
diff -u ../old/FD-3.00i/html.c ./html.c
--- ../old/FD-3.00i/html.c	Sat Jul 24 00:00:00 2010
+++ ./html.c	Wed Sep  8 02:09:57 2010
@@ -107,6 +107,7 @@
 	DEFTAG("HR", HTML_BODY, HTML_NONE, breaktag),
 	DEFTAG("P", HTML_BODY, HTML_NONE, breaktag),
 	DEFTAG("TR", HTML_BODY, HTML_NONE, breaktag),
+	DEFTAG("LI", HTML_BODY, HTML_NONE, breaktag),
 	DEFTAG("A", HTML_BODY, HTML_NONE, anchortag),
 };
 #define	TAGLISTSIZ		arraysize(taglist)
---- Cut Here ----


> 私見としては C だけは無いと思っています。理由は、

 まぁ一番混乱が生じそうですものね。便利かも知れませんが、同
じことは「cat <http://host/path >local」でも実現出来ますし。
この書式なら混乱もないでしょう。


> といったところです。この中で選ぶとしたら A かなぁ。

 URL 形式のパス名を一般のパス名と透過的に扱うならば B. です
かね。特例を作ってしまうと説明が必要になりますし。
 実際使ってみて思ったんですが、URL 文字列でパス名補完出来る
のは案外便利そうです。ftp client には時々そういう機能見かけ
ますけど、shell の機能としては他にはないのではないかと。
 そもそも URL 上の i-node なんか無意味なので、その収集をや
めるという実装にすればすんなり B. になりそうな気がします。

                                               しらい たかし