2012-04-09 12 views
0

私はこれで髪を失っています。私が望むのは、セッションIDをURLに追加することだけです。なぜセキュリティリスクを受け入れるのかを説明するために、このサイトはモバイル用のものです。モバイルブラウザの中には、Cookie(セッションIDが保存されているもの)を受け付けないものがあります。だから私は選択肢の多くを持っていないが、URLを介してセッションIDを解析する。use_trans_sid workを作成する(URLにセッションIDを追加する)

は「だから、」私は「これは簡単です。ただ、各ページの冒頭で、これを使用しています。:」、と思った

ini_set('session.use_trans_sid', 1); 
session_start(); 

がっかり。うまくいきませんでした。 OK。

php_flag session.use_trans_sid on 
php_value session.use_trans_sid 1 

影響なし:その後、私はそれでこれで(モバイルサイトがメインサイトのサブディレクトリにある)私のサブディレクトリ内の.htaccessを作成しました。怒り出す。

次へphp.ini自体の設定をテストするためだけに変更しようとしました(ウェブサーバー上で実行されている残りのWebサイトで「URL-Session-ID」を使用してはならないため、オプションではありません)。だから私は、このエントリが設定されていることを確認しました:

session.use_trans_sid = 1 

をそれから私は私の驚きにウェブサーバと...を再起動しますが、驚きではない:NO EFFECT!

いずれの場合も、phpinfo()を追加しました。私の設定が有効になっているかどうかを確認してください。どの場合でも、私はsession.use_trans_sid = 1(phpinfo()に従って)という確認を得ました。

これは私が何かを見落とさなければならないことを意味します。今思うのは誰か?自分のコード内のすべてのリンクにセッションIDを手動で追加するだけです。私がこれを避けるのを助けてください... :)

あなたの星は何ですか? ;)

BiBは

答えて

0

Ok ...これは確かにそれでした。 Oliravが問題を発見しました。

リダイレクトをどこかで行うとシステム全体が動作しません。すべてのフォームとすべてのリンクで、同じページを呼び出すと、中央のファイルを使って実行します。そこで、私は何かを行い、それに応じてリダイレクトします。それは効果的にuse_trans_sidを殺します。つまり、中央ファイルでは、実際に手動でsidを追加する必要があります。このようなもの:

この問題が同じ問題を抱えている人に役立つことを願っています。 :)

ありがとうOlirav !!!

1

ブラウザがCookieをサポートしている場合、URLが追加されないので、あなたは、通常のブラウザでこれをテストしていますか?

+0

両方でテストします。私も設定でそれをテストしたことを言及する必要があります ini_set( 'session.use_only_cookies'、0);ini_set( 'session.use_cookies'、0); となり、クッキーの使用を完全に無効にすることができます。無駄に。しかし、チップのおかげで。良いヒント。 – BigBonsai

+0

私はこのサイトを見ることができますか?もっとお手伝いできますか? – Olirav

+0

また、php_flag session.use_trans_sidを追加することもできます(値feildではなく)。これがhtaccessに違いがあるかどうかを確認してください。値は文字列のためのもので、フラグはブール値のためのものです - 両方を使用すると、それ自体を妨害する可能性があります – Olirav

関連する問題