[Tep-j-general] Re: PHP4.3.1上でのSSL 問題

Zurück zum Archiv-Index

Mineaki Gotoh gij****@peak*****
2003年 4月 5日 (土) 10:36:47 JST


吾妻さん、こんにちは。後藤です。

>このエラーは、SSL使用時に、最初に作られたclass navigationHistoryのインス
>タンス($navigation)が無くなったために起こってるんですよね?
>NONSSL から SSLに変わる際にインスタンスが渡されないという事ですか?
>それとも、Session関係でしょうか?

おそらくSessionでしょうね。NONSSLからSSLに切り替わる際に、セッション
を保持できていないと思われます。セッション値をチェックしてみれば、そ
のあたりが確認できると思います。


このあたりは私も散々苦労した部分ですが、基本的に、osCommerceは、SSLと
NONSSLで、パスの深さが異なる環境をほとんど考慮していません。そのため、
あちこちパッチを入れる必要があります。

おそらく、吾妻さんも

> ちなみに、SSLは、共有サーバーです。

と書かれていることからも、

NONSSL)
http://www.yourdomain.com/

SSL)
https://www.hosting.com/~yourid/

のような環境なのではないでしょうか?


>PHPのバージョン4.2.2の時には、正常に動作していたのですが、Ver4.
>3.1に変わったとたん問題が発生しました。SSL関係で何かが変わったので
>しょうか?

SSLそのもので変更になったことはないと思います。

4.2.2で正常に動いていて、4.3.1で動かなくなった、という現象だけではな
んとも言えませんが、session関係のデフォルト値が変わっているというのが
ありそうですね。


これで直る可能性は低いと思いますが、上記のような環境で正常に動作させ
るために必要なパッチのうちの一つを提示しておきます。

*/includes/application_top.php

  if (function_exists('session_set_cookie_params')) {
    session_set_cookie_params(0, substr(DIR_WS_CATALOG, 0, -1));
  }
    ↑ここをコメントアウト

IEだとなんとも言いませんが、少なくともOperaは叱ってきます。


これらのパッチを色々入れた結果か、それとも同じ4.3.1でもphp.iniが違う
のかどうかは判りませんが、少なくともうちでは、4.3.1+上記の環境で正常
に動作しています(そのはず……)。

頑張ってみてください。

-- 
株式会社PEAK  ネットワーク技術担当 後藤 <gij****@peak*****>




Tep-j-general メーリングリストの案内
Zurück zum Archiv-Index