• 締切済み

PHP4 setcookie関数でIE6上でCookieが発行されない

お世話になっております。 件名の通りですが、(クライアント)Netscape7.1やOpera上では正常にCookieが発行されて、Cookieにより条件分岐処理が行えるのですが、IE上ではそれが出来ません。 以下のような設定でCookieを発行しようとしています。 (サーバー) setcookie("user_test_id",$row->user_id,time()+60*60*24*60,"/test_folder/") ; ※$row->user_idとはMysqlに登録されている文字列を取得しています 構築環境は下記の通りです。 (サーバー) WindowsXP上でapache_2.0.55、php-4.4.2 ※PHPは正常に動作中(他のスクリプトは問題ありません) 同じ様にLocalhostにAnhttpd1.4[Webサーバー]とPHP4で上記と同じシステムを構築した場合、IEでも正常にCookieが発行されます。ということは、Apacheの設定に不備があるのでは?っとにらんでいるのですが、具体的にどこをいじれば良いのか分かりません。 原因究明に繋がるヒント(回答)をご存知の方、どうかご教授お願い致します。よろしくお願い致します。

みんなの回答

回答No.2

php.iniの session.cookie_path はどうなっていますか? phpスクリプトが置かれているディレクトリがその対象になっていますでしょうか? 確認なのですが、session_start()関数は実行されていますよね。

参考URL:
http://jp.php.net/manual/ja/ref.session.php
dora2005
質問者

お礼

解決しましたのでお知らせしときます。 Setcookieでパスは指定してましたが、ドメインは指定いませんでした。 ドメインを指定してなくても同一マシン(ローカルサーバ)であればCookieは発行されるみたいですが、セグメントが違う別PCからはCookieは発行されないみたいです。 今回ドメインを指定することで解決しました。

dora2005
質問者

補足

ご回答ありがとうございます。 >session.cookie_path はどうなっていますか? session.cookie_path = / とデフォルトのままにしています。 Cookeiが正常に発行されるテストサーバと設定は同じにしています。テストサーバと本番サーバの違いはWebサーバが前者はanhttpd1.42n、後者はApache2を使っています。 >session_start()関数は実行されていますよね。 session_start()関数は本スクリプトでは利用していません。Cookieしか使っていません。

すると、全ての回答が全文表示されます。
  • php504
  • ベストアンサー率42% (926/2160)
回答No.1

IE6の設定を「全てのCookieを受け入れる」にしてもだめでしょうか。

dora2005
質問者

補足

ご回答ありがとうございます。もちろんIEの設定も変えて試しています。(すべてのCokkieを受け入れるに設定)

すると、全ての回答が全文表示されます。

関連するQ&A