Mineaki Gotoh
gij****@peak*****
2002年 11月 1日 (金) 17:57:51 JST
こんにちは。後藤です。 これまた古いアーティクルに対するレスポンスで恐縮なのですが…… > 日本語版と本家の最新版を比べてテストをしていて、 > admin側のSSLの問題に気が付きました。 > > osCommerceでadmin側にSSLで接続する設定にしても、 > ページを移るとNONSSLのページにつながってしまいます。 > (これは本家の最新版でも同じです。) > みなさんご存知でしたか? まったく気づいていませんでした。ログイン直後には確かにSSLになっている ので、それ以降のチェックをしていませんでした。 確かにこれは結構まずいバグですよね。 とりあえず、admin/includes/configure.php にその旨を書いておいた方が良 いのではないでしょうか? ただ、問題なのはここからです。 > 本家のMLで調べてみると、これに関するいろんな投稿があって、 > バグレポートには、ちょうど私も考えたのと同じ対処方法が投稿されていました。 > http://www.oscommerce.com/community.php/bugs,408 > これは、tep_href_link() をデフォルトでSSL接続にしろという指摘ですが、 > (実際にはこれだけでは解決しなくて、他の修正も必要なんですが) > 何か結論としては、次のようなものなっています。 > > ------------------------------------------------------------ > To define a none secure admin use > define('HTTP_SERVER', 'http://www.myserver.com'); > to define a secure admin use > define('HTTP_SERVER', 'https://www.myserver.com'); > ------------------------------------------------------------ > > つまり、admin/includes/configure.php の中の > > define('HTT_SERVER', 'https://www.myserver.com'); > define('HTTP_SERVER', 'https://www.myserver.com'); > > の両方を 'https:' にしてしまえということです。 > これはちょっと投げやりな解決だと思えるんですが、 > 現時点では、こうするのが一番手っ取り早いみたいです。 osCommerceを使っている人のSSL使用率がどれほどなのかはまったくわからな いのですが、自前ホスト名で第三者認証機関を利用している人って、それほ ど多くない気がします。 むしろ、ホスティング会社が提供する無料のSSL(ホスト名はホスティング会 社のもの)を使うケースの方が多いのではないでしょうか? その場合、admin/includes/configure.php は、 define('HTTP_SERVER', 'https://www.hosting.com/~myid'); define('HTTPS_SERVER', 'https://www.hosting.com/~myid'); という設定になりますよね。 こうなってくると、今度はあちこちで、WSやFSの扱いのまずさから来る不具 合が顕在化してくるんです。 とりあえず、ぱっと目についた所では、 admin/index.php 96行目 admin/includes/header.php 20,24行目 の3箇所に、 <a href="' . DIR_WS_CATALOG . '"> というリンクがあります。これを、 <a href="' . HTTP_CATALOG_SERVER . DIR_WS_CATALOG . '"> と修正する必要があるでしょう。 このあたりなら修正も簡単なのですが、categories.php あたりがガタガタだっ たらどうしようか、と結構頭を悩ませております。 とりあえずは、今の強制SSL設定でしばらく運用してみて、おかしな点が出て から対処する、という泥縄的な手法でやってみようと思っています。 -- 株式会社PEAK ネットワーク技術担当 後藤 <gij****@peak*****>