ログインが必要な Web サイトがあります。ログインは、ターゲット デバイスに割り当てられた認証トークンによって管理されますが (他にもいくつかあります)、何らかの理由で Windows Phone では機能しません。iPhone とすべてのデスクトップ ブラウザーでテストしたところ、すべてのブラウザーで動作します。
設定された Cookie を表示するように設定しました。認証トークン Cookie を除いて、設定されている他のすべての Cookie が表示されます。
Cookie 名を変更しようとしましたが (実行中の冗長コードとの衝突があったかどうかを確認するため)、うまくいきませんでした (デスクトップ ブラウザーではまだ動作しています)。
setcookie 関数呼び出しを検出するコードを配置していたので、正しく呼び出されていることがわかりました。login と setcookie の同じコード パスで、$_COOKIE の var_dump も実行し、トークンが一時的に送信されたことを示しました。
コードにはモバイル ブラウザーを検出する機能が含まれていますが、使用されていません (テンプレート エンジンのいくつかの小さな部分を除いて)。
コードに関する追加の注意事項は、最初から最後まで、出力バッファーが有効になっており、コードの最後にのみ出力されることです。
問題の原因、または特に Windows Phone の問題の原因を突き止めるために、他に何ができるでしょうか。
編集
iPadでテストしたばかりですが、動作していません。通常の iPhone と Safari ブラウザで動作するため、非常に奇妙です。
編集
サイトを実行しているLAN上のコンピューターにサーバー(AMPPS)をインストールし(同じデータベースを使用)、ログイン機能は正しく機能します。
さらに、モバイル (ライブ バージョン) でのテスト中に、ユーザーはユーザー専用ページにリダイレクトされますが、Cookie は検出されず、ユーザーはサインイン ページに戻ります。他の Cookie は有効ですが、認証トークンは無効です。
すべての Cookie は同じ方法で設定され、有効期限は time() + 3600 で、パスは「/」に設定されます。