Windows で失われた Apache + PHP SESSION の解決プロセスの完全な記録、apache_PHP チュートリアルの完全な記録

WBOY
リリース: 2016-07-13 09:57:36
オリジナル
859 人が閲覧しました

WindowsでのApache + PHP SESSION lossの解決プロセスの全記録、Apacheの全記録

今日の作業は、PHPサイトを新しいサーバーに移行することです。

Windows Server 2008 仮想マシンを作成し、その仮想マシン上で net stop http サービスを停止し (ポート 80 の競合を避けるため)、Apache + PHP をインストールして構成し、サイトを新しいサーバーに移行します。サイトは正常に開き、Apache + PHP は正常に動作し、MySql サーバーへの接続は正常に行われ、作業は 30 分で完了すると思っていましたが、その後悪夢が始まりました。

このサイトはシングル サインオンを使用しており、ログイン プロセスには Web サービスへの SOAP 呼び出しを含む JavaScript 非同期操作が含まれています。ログイン後、エラー メッセージなしでログイン ページに直接戻りました。次の可能性が考えられます。

1. アカウントが異常ですか?他のシステムでテストしたところ、アカウントのステータスは正常でした。

2. JavaScript の非同期操作が失敗していますか? IE 開発者ツールを使用して Javascript の戻り値を追跡します。戻り値は正常です。

3. Web サービスの呼び出しは失敗しましたか? Fiddler を使用して、検証が成功し、ローカル ログインが完了したことを示す Web サービスの戻り値を追跡します。

追跡とデバッグを繰り返した結果、サイトの SESSION が失われたのではないかと疑い始めました。

1. JavaScriptの非同期操作でSESSIONの設定に失敗するのは、同期アクセスと非同期アクセスのSESSION IDが異なるためでしょうか?これは Flash の非同期呼び出しでのみ発生しましたが、JavaScript でも発生しますか?出力同期アクセスと非同期アクセスのSESSION IDの値は同じです。

2. PHP テストページを 2 つ作成し、1 つのページで SESSION を設定しますが、もう 1 つのページではそれを読み取ることができません。 php.ini 関連の設定を確認してください。正常であるようです。 session.save_path = "C:/php/tmp" パスを確認してください。ただし、SESSION 関連のファイルはなく、設定には tmp ディレクトリすら含まれていません。

結末はとんでもないです。tmp ディレクトリがないと、PHP は SESSION ファイルを書き込むことができず、当然 SESSION は失われます。 tmp ディレクトリがないのはなぜですか? インストール パッケージに含まれていないためです...私の 3 時間。

以上がこの記事の全内容です。phpを学習する皆さんのお役に立てれば幸いです。

http://www.bkjia.com/PHPjc/980226.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/980226.html技術記事 Windows で失われた Apache + PHP SESSION の解決プロセスの全記録 Apache の全記録 今日の作業は、PHP サイトを新しいサーバーに移行することです。 Windows Server 2008 仮想マシンを作成して...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート