web-dev-qa-db-ja.com

FCGIまたはmod_phpでセッションが異なりますか?

Apache-php(プリフォーク付き)で実行されているWebサーバーのクラスターがあります。 preforkからworker(fcgi)に移行する予定です。問題は、すべてのサーバーを一度に移動できないことです。そのため、短期間(数日)は、サーバーの一部がfcgiに、一部がmodphpに配置されます。私は今日、セッションがこれら2種類のサーバー(fcgiを備えたテストサーバーとmod_phpを備えたリアル)間で機能するかどうかをテストしましたが、そうではないように見えます。プロキシ(基本的なnginx)がからリダイレクトしているときにログアウトしますfcgiを使用したwsからmod_phpを使用したws。これらのサーバーでホストされているアプリケーションは、変更がほとんどない(コアには何もない)Magentoです。プロキシを削除すると、すべてが完全に機能し、ノード間で変更でき、セッションは同じです。

これを引き起こす可能性のあるnginxに何かありますか?以下はnginxの設定の一部です:

 proxy_ignore_headers "Cache-Control" "Expires";

    proxy_cache_valid  200 302 60m;

    proxy_redirect     off;
    proxy_set_header   Host             $Host;
    proxy_set_header   X-Real-IP        $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    proxy_max_temp_file_size 0;

    client_max_body_size       100m;
    client_body_buffer_size    128k;

    proxy_connect_timeout      600000;
    proxy_send_timeout         600000;
    proxy_read_timeout         600000;

    proxy_buffer_size          4k;
    proxy_buffers              4 32k;
    proxy_busy_buffers_size    64k;
    proxy_temp_file_write_size 64k;
    proxy_cache_use_stale  error timeout invalid_header updating http_500 http_502 http_503 http_504;
1
MihaiM

答えではありませんが、おそらく手がかりです。

FCGIにはx_forwarded_forがありません。あなたはすべて設定されているかもしれません:

proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

しかし、それは確かにセッション/ Cookieの管理に影響を与える可能性があります。考えられる関連する問題に取り組んでいます: https://stackoverflow.com/questions/6791446/cakephp-php-user-sessions-swapping-for-a-subset-of-our-customers

1