バージョンは2.0b11です。b5では問題ありませんでした。
そのあたりのタイミングで ezweb がらみで位置情報まわりでの修正というと web_schema サポートくらいしかなさそう。
keitairc を https モードで動かしてると device:gpsone とか device:location の url パラメタが https://ふがほげ になるわけだけど、そもそも gpsone も location も https への redirect をサポートしてないんじゃないか?
だとすれば、https の時は位置情報送信は非サポートにするしかない?
「URLが正しくありません」と言われるようだ。
で、手元に W31T があるわけではないので実機で確認したわけではないが、少なくとも 手元にある W53CA では web_schemaにhttpsを設定しても「URLが正しくありません」という エラーにはならなかった。
というあたりを考えると、
といった感じなので
という程度の対処じゃないかと思う。
上の話 (2009-07-22 22:36のコメント) は、 「バグ報告者は、web_schemaをhttpsに設定してau W31Tでkeitaircを使っているのではないか」 という仮説に基づくものですよね。
しかし、au端末では、キャリアが認めて端末にクライアント証明書を内蔵させたSSL証明書以外は、そもそもアクセスできないはず。 つまり、いわゆるオレオレSSL証明書はau端末では使えない。
この報告者が、きちんと購入したSSL証明書に基づいてhttpsでkeitaircを使っている可能性は、ゼロではないが、かなり低そう(主観ですが…) なので、上記の仮説も可能性低いのではないかと思います。
* 再現パターンなどの追加情報がないと対処難しいと判断します。 * 確実でない仮説に基づいて修正しても副作用を出してしまいそうです。 * なので優先度、重要度を下げ、マイルストーンから外しました。コンポーネントをpluginにしました。 * 概要も修正しました。
いや、えーとですね。
「URLが正しくありません」
というエラーは、パーサがURLをパースした段階で出力してくるエラーでそもそも通信なんかにいく前なので auのオレオレ証明書問題とは、また別の話なんすよ。
「知らないプロトコルが指定されてるので、わしゃアクセスしない」
で、一部端末では上記場面において「http://」のみが知ってるプロトコル(位置情報をhttpでしか投げられない)なので それ以外が指定されている場合は「URLが正しくありません」になるという話です。
かつ、実際にauの端末でやってみるとわかるんですが、web_schema が利用されている箇所 (html内出現するkeitairc内部へのリンクはプロトコル部分が省かれてるので、URLの一部として web_schema に指定している文字列がhtml中に出現する箇所)は実はここくらいしかなくて web_schemaを指定してても keitairc 本体へのアクセスは httpでできちゃう(という意味では、この機能は なんなのかという気もちょいする(わら)ので、web_scheme を https にセットしていて、他の機能は使えていて かつ、ここでだけこういうエラーがでると言うのは実際は「ものすごくありそうなこと」だったりします。
いずれにせよ、この報告「自体」はこれだけの情報だと憶測しかできないのには同意。
うーん、二人で同時にいじってるとチケットのパラメタを戻しちゃったりする事故が発生するんだな...
ishikawa への返信
web_schemaを指定してても keitairc 本体へのアクセスは httpでできちゃう
これは必ずしも正しくはありません。
The Internet からは reverse proxy 経由でしかアクセス出来ない環境の場合、 web_schema を正しく設定していないとアクセスできなくなります。 web_schema, web_host, web_port, web_root はそのための設定になります。
nyan_ への返信
ishikawa への返信
web_schemaを指定してても keitairc 本体へのアクセスは httpでできちゃう
これは必ずしも正しくはありません。 The Internet からは reverse proxy 経由でしかアクセス出来ない環境の場合、 web_schema を正しく設定していないとアクセスできなくなります。 web_schema, web_host, web_port, web_root はそのための設定になります。
んー、そういう意図なのか...というか、とりあえず 本来のweb_schemaの挙動に 関しては、この au W31Tの問題と本質的に関係ないので、ここで続ける話ではない んで、ちょっと移動したい感じです。
いま #18772 を作ってしまったので、まず 本質的には #18772の大部分はオレの勘違いの ようですが、ただ少なくともweb_schemaがそーゆー意図からのものだというのはドキュメントの どこにも記述がなくて、今のままだとなんだかさっぱりわからないと思います。
web_schemaの本来的な意味がとれてなかったのでという話は#18872でした...
なんか脱線した上に、もともとのオレのコメントの記述の意味が伝わってない気もするので 念のため再度まとめておきます。
まず、「URLが正しくありません」というエラーですが これは au の位置情報通知URLである ところの device:gpsone もしくは device:locationに渡している url パラメタを端末が パースした結果不正だと思った(URLとして正しくないと判断した)場合に吐かれるエラーです (もちろん100%そうだとは言わないけども、別の端末で再現もしたし、もともとのレポートの 内容からもここ以外にはなさそうなのでほぼ間違いない)
で、このエラーが出るのは実際に位置情報通知云々の処理を始める前のできごとで通信も行われ る前で、端末側で文字列をパースした際に発生します。
つまり、このエラーが出るということはurlパラメータに渡っている文字列、つまり
<!-- tmpl_var web_schema -->://<!-- tmpl_var web_host -->:<!-- tmpl_var web_port --><!-- tmpl_var root --><!-- tmpl_var session_id -->/location_receiver/<!-- tmpl_var cid -->/&ver=1&datum=0&unit=0&acry=0&number=0
<!-- tmpl_var web_schema -->://<!-- tmpl_var web_host -->:<!-- tmpl_var web_port --><!-- tmpl_var root --><!-- tmpl_var session_id -->/location_receiver/<!-- tmpl_var cid -->/
のいずれもテンプレート展開されたあとの文字列がURLとして不正だと言われているということになります。
で、ここいらあたりからは推論が入って来ますが(わら
報告にあるようにb5で大丈夫でb11だとダメという話だと、上記の両方の共通部分のうちb5以降で変更が あった箇所が怪しいだろうということになるでしょう。
で、ここの文字列のうち b5 以降で変更されている箇所が一ヶ所だけあります。
b5 では web_schemaがなく べたに http:// が書かれていたようですが、現在は web_schema 変数を展開 するようになってます。
というあたりをふまえると web_schema になにかおかしな文字列が入り込んだりしてるのではないか、あるいは なにかおかしな値を設定しているのだろう という線を疑いたくなります。
さらに、この線でおしすすめると
というあたりにいきつきます。
で、もう一つもともとのコメントに書き忘れてたようですが、かつ情報のソースがどこだったのか もはやわからなくなってしまったんで、非常にあやふやな情報になってしまうわけですが、少なくとも au の位置情報サービスに対応した初期の端末の一部では位置情報のポスト先にhttpsが使えず、ここでの 報告のように「URLが正しくありません」というエラーを返すものが存在する(httpsが使えないのは通信できない とかそういうことじゃなくて、そもそも位置情報の処理ルーチンのパーサがhttpsというschemaを知らないので 不正だとして通信にいく前にエラー処理してくれちゃう)のは発見しており、そもそも一部の端末では web_schemaを (httpsに)正しく設定していても、実際には位置情報通知が使えないという状況が発生するようだということも わかってはいます。
と、ここまでぐちゃぐちゃ書いているわけですが 結論として どーなのかというと
という風に考えられるので、おこせるアクションとしては
ということだと思います。
簡単にまとめると、「とりあえずどーしよよーもなさそうだ」です(わら
(なので、マイルストーンからはずしたのも優先度下げたのも正解だと思う)
b12が出たので久しぶりに見たらコメントが。 端末側の不具合ということでしたら、了解です。 もし何か試せそうなことがあれば、情報はお出しします。とりあえずb12で試してみます。
rs6000moe への返信
b12が出たので久しぶりに見たらコメントが。 端末側の不具合ということでしたら、了解です。 もし何か試せそうなことがあれば、情報はお出しします。とりあえずb12で試してみます。
ちなみに、現象が発生したとき、web_schema を https に設定などしてらっしゃいましたか?
morimoto への返信
ちなみに、現象が発生したとき、web_schema を https に設定などしてらっしゃいましたか?
いえ、デフォルト(http)のままです。
なお、b12にしたところ、refits、googleともに使用可能となりました。クローズ頂いて構いません。
ご報告ありがとうございます。 ではクローズとします。
位置情報送信をすると、「URLが正しくありません」と表示されます。 GPS、簡易ともに同じ現象です。 通常の発言は可能です。
機種:au W31T