2

さて、私が取り組んでいるcoldfusionサイトに、「Galleon」として知られるサードパーティ(オープンソース)のCFフォーラムをインストールしました。

少し前に同様の質問をしましたが、今は少し進んでいます。

当面の問題は、適切な親サイトに存在する変数 (セッションなど) を認識しないことです。フォーラム自体は、サイト ディレクトリ内のサブ フォルダー内に保存されます。しかし、有効期限が切れていないことがわかっているセッション変数を出力しようとすると、エラーが発生し、認識されません。

変数 (structclear(session) など) をクリアするものをスキャンしましたが、あまり表示されませんでした.application.cfm に注意すべき設定はありますか?

一般に、CF でクロスアプリケーション認証を行うにはどうすればよいでしょうか?

ここでやりたいことは、ユーザーがメイン サイトにログオンしたときに作成される既存の session.userid 変数に基づいて、新しいセッション変数を設定することです。これは、Galleon フォーラムに再度ログインするように依頼する必要がないようにするためです (これにより発生するすべての複雑さ)。

4

2 に答える 2

3

フォーラムの Application.cfc で、ルートの Application.cfc を拡張する必要がある可能性が非常に高くなります。次に、フォーラムの onApplicationStart() を更新して、super.onApplicationStart()何よりも先に呼び出すようにします。親 Application.cfc で何が起こっているかによって、各 Application.cfc 関数についても同じことが言えます。

Galleon の Application.cfc では、親の Application.cfc でアプリケーション名やその他の変数を設定する必要がなくなります (@Ben が指摘したように)。

于 2012-08-20T21:09:58.743 に答える
2

2 つのアプリケーション間で application.cfms/application.cfc の両方でアプリケーション名が同じであることを確認してください。そうしないと、同じセッション/アプリケーション データを共有できません。

また、「session.user」などのアプリケーション間で変数の競合が発生する可能性がないか、クイック スキャンを実行します。

于 2012-08-20T20:41:46.867 に答える