- ベストアンサー
SSL環境でオートコンプリートを
非SSL環境ではオートコンプリートの機能が使えるのですが、SSL環境(HTTPS)になったとたんに表示されなくなりました。 SSL環境(HTTPS)上でインターネットエクスプローラーのオートコンプリートの機能は使えないのでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
前言撤回。HTTPヘッダのレベルで制御していると思われます。自分の管理サイトでも、他のいくつかのサイトでも共通した特徴でした。 HTTPヘッダに次のようなレコードを追加すると、オートコンプリートがオフになるようです。(Expires は過去の日付) Expires: Mon, 26 Jul 1997 05:00:00 GMT Cache-Control: no-cache, no-store, must-revalidate Pragma: no-cache 追加するといっても、ApacheでSSLオンにすると勝手に付いてしまうたぐいのヘッダなので、もしはずすなら別の設定が必要になるのかも知れません。 この線で検索したところ、METAタグでも同じことができるという報告を見つけました。 ヘッダの有無で実験してみればよいのですが、今ちょっとそれはできないので、未確認です。
その他の回答 (2)
- Hooray
- ベストアンサー率60% (12/20)
大変失礼しました。 改めて調べてみたところ、オートコンプリートできるサイトの方が多かったです。(gooのログインページでできた。灯台もと暗し!) 私も気になるので、引き続き調べているのですが、できるサイトとできないサイトの違いは微妙です。 今のところ、暫定的に”これかも”と思っているのは次の点です。 できるサイトはID、パスワードの送信ボタンに type="image" や type="submit" を使っていて、ボタンクリック即=送信である。 できないサイトは送信ボタンが Javascript を呼び出すなど、中間処理が挟まっている。私の管理下にあるサイトもそうでした。
補足
丁寧な回答をありがとうございます。 ご回答でのご指摘のとおり、JavaScript上でのsubmit()ではオートコンプリートできません。 INPUT TYPE="image" か INPUT TYPE="submit" でしかオートコンプリートの機能はいかせないみたいです。 一度、TYPE="submit"で実行したサイトにJavaScriptでのsubmit()に切り替えると、オートコンプリートはできますが、入力した文字を記録させることはできませんでした。
- Hooray
- ベストアンサー率60% (12/20)
明確に無効だと書いた文献はないようなのですが、経験上できません。 やったことはないですがAUTOCOMPLETE="ON"の属性を付けてもだめだと思われます。
補足
さっそくのお返事ありがとうございます。 自分もそう思っていたところ、こんな指摘をうけてしまいました。 「https://www.idaten.ne.jp/portal/index.html ではできている!」 何でなんでしょうか・・・? 特殊な書き方でもあるのでしょうか?
補足
ご回答のように、 <meta http-equiv="Expires" content="Mon, 26 Jul 1997 05:00:00 GMT" > <meta http-equiv="Cache-Control" content="no-store, no-cache,must-revalidate" > <meta http-equiv="Pragma" content="no-cache" > <meta http-equiv="Content-Type" content="text/html; charset=x-sjis"> を記入しましたが、変化ありませんでした。 現在、ASPでの開発なのですが、ASP上では Response.AddHeader "Pragma","no-cache" Response.AddHeader "Cache-control","no-cache" Response.Expires=0 Response.CacheControl="Prevate" を設定していますので、原因は現在の環境にあるのかもしれません。 もう少し色々と粘って考えてみます。 ありがとうございます。