beh se hai un server dedicato di certo non è un problema... ma se sei su un hosting condiviso, anche il risparmio di 1 giro a vuoto può appesantire il server.Originariamente inviato da v.1
giànon pensavo fosse grave far lavorare un po' il server a vuoto.. un pochino soltanto
pensa a 100 diversi siti hostati su cui c'è uno script che gira "a vuoto".
Se questi 100 siti hanno 100 visite, sono ben 10.000 operazioni fatte per nulla per singolo accesso.
Quello che ne risente di più non è tanto il server (al massimo chi hosta il sito può cambiarlo con macchine più potenti o può fregarsene e fare lavorare a pieno carico le macchine) ma l'utente che
deve attendere più tempo per il caricamento della pagina.
Lo so, sto un po esagerando, ma era per estremizzare e far capire che anche l'ottimizzazione è una cosa importante quando si programma.
Ti dico questo in quanto in ufficio, in lan ma su macchine non pienamente ottimizzate, un programma scritto bene (ma non ottimizzato)impiegava quasi 7 ore a girare, mentre ottimizzandolo fa il tutto in meno di 5 minuti.
E' bastato cambiare 3-4 righe di codice, ma il server ne ha beneficiato assai![]()
Non sono il più adatto per rispondere, magari se passa qualcuno di più competente di darà più informazioni e più certezze.Originariamente inviato da v.1
attualmente il login lo faccio con le $_SESSION. nella session viene memorizzato il nickname dell'utente. forse sarebbe più sicuro usare delle chiavi generate randomicamente di volta in volta che vengono assegnate a tutti gli utenti e salvate in database in coppia con nickname e password. quindi al momento del login si andrebbe a verificare che nel database sia presente anche quella chiave usata oltre a nickname e password. sarebbero 3 elementi da verificare anzichè 2. inoltre nella session potrei salvare la chiave anzichè il nickname, che mi sembra un dato meno sensibile. basta eliminare tutti gli altri utenti associati a quel codice una volta che uno lo usa per loggarsi, anzi non serve tanto la session riconosce l'indirzzo ip giusto?
Comunque ce provo lo stesso
..vuoi mai che passa qualcuno che me smentisce, così da imparare qualcosa di nuovo con "poco sforzo"?
![]()
In teoria i file di sessione sono salvati sul server. e sul pc locale viene salvato un cookie con l'id della sessione aperta.
Su server che ospitano diversi siti, può capitare che tutti i file di sessione dei vari siti siano salvati nella medesima cartella.
Quindi basta che 1 sito abbia grossi vulnerabilità che si ha sottomano tutti i dati delle varie sessioni.
Quindi applicando controlli incrociati sessione/db si ha una maggiore sicurezza.
nel caso in cui qualcuno rientra in qualche modo a recuperare i dati della sessione dal disco del server, se su questo vi è solo un codice difficilmente potrà entrare nel sito.
(il codice salvato in $_SESSION è la chiave della tabella SESSIONI creata nel proprio db nel quale contiene tutti i dati che servono per verificare se l'utente è loggato o meno).
Quindi in $_SESSION salvo la variabile ID_SESSIONE (una stringa generata casualmente) nessuno può accedere agli altri fati sensibili.
nel db si avrà una tabella SESSIONI con dentri i vari campi:
Credo che il sito sarebbe più sicuro. Ma per il tuo utilizzo, tutta questa sicurezza è necessaria o ti puoi accontentare di qualcosa meno sicuro, ma che già è scritto e funzionante?id_sessione
uname (nome utente)
upwd (hash password utente)
uip (indirizzo ip)
udata (data/ora Login o ultima operazione)
Se non hai scadenze strette, ti consiglio di apportare le modifiche per renderlo più sicuro.
Se invece hai scadenze (o magari vuoi pubblicare il sito il prima possibile) puoi prevedere questa modifica in un successivo intervento sul sito, atto all'ottimizzazione e alla correzione di alcuni piccoli bug che verranno fuori.
Aspettiamo comunque gente più competente per sapere quanto la ho sparata grossa![]()