Domanda

Ho un sito Web autenticato che ha una sottodirectory con esigenze di accesso più forti. Chiunque può registrarsi per il sito web principale, ma solo gli amministratori del sito possono accedere alla sottodirectory. Attualmente, sia il sito principale che la sottodirectory hanno ciascuno dei propri file application.cfm e pagine di accesso.

Ho recentemente aggiornato da ColdFusion da 8 a CF 10 e ho dovuto fare un Lotto di riconfigurazione della mia gestione della sessione . Ora sto usando i cookie solo della sessione per mantenere la sessione dell'utente mentre si muovono intorno al sito.

Con questo cambiamento nel comportamento in CF 10, sono preoccupato che gli amministratori del sito che sono anche registrati al sito web principale otterranno le loro sessioni strapazzate se si rendono avanti e indietro tra le due applicazioni (ad esempio, per vedere se loro può replicare i problemi di un utente o cercare i dettagli del database mentre sono registrati nel sito principale).

Le credenziali per il sito principale e la sottodirectory provengono dallo stesso database utente, con gli amministratori del sito che hanno una bandiera che consente loro un ulteriore accesso. Posso facilmente scrivere uno script che controlla se un utente ha effettuato l'accesso sul sito principale o sulla sottodirectory e indirizzarli in modo appropriato se cambiano posizioni.

Bottom line, nel mondo cf 10, ho bisogno di un secondo application.cfm, e, successivamente, un secondo set di variabili di sessione, per quella sottodirectory?

( Nota: Ho guardato sia ColdFusion Autenticazione del sito cross e Puoi avere più cfapplicazioni Un'applicazione.CFM? Iscrizioni e, mentre hanno un sacco di chicche qui, non rispondere completamente alla mia query.)

È stato utile?

Soluzione

No, non è necessario avere più file application.cfm / cfc.Non è nemmeno necessario avere il primo.Tuttavia, non è necessariamente una brutta cosa neanche avere più.Se hai un multiplo, puoi avere una diversa gestione OnError e OnRequest per la sottodirectory, se è vantaggioso per i tuoi obiettivi.

Preferisco utilizzare solo una applicazione.CFC in modo che tutta la mia applicazione di routing / autenticazione / gestione degli errori sia eseguita davanti anteriore piuttosto che divisa tra l'applicazione principale e l'area amministrativa, e non devo affrontare più sessioniper utente.

Altri suggerimenti

Se si dispone di variabili session in application.cfm nel parent directory, è possibile semplicemente generarecodiciTagCode nel file <cfinclude> in application.cfm.In modo da poter avere gli stessi valori di sessione ai file anche nella sottodirectory.

Esempio subdirectory in application.cfm

<cfinclude template="/home_directory/application.cfm" />
.

Nota: qui non è necessario utilizzare il tag subdirectory:.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top