Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401

    Strano problema con sessioni

    Ho un sito che utilizza delle variabili di sessione.
    Funzionava tutto bene, poi (mannaggia a me) ho deciso di spostare i file di sessione in un'altra cartella (prima erano in /tmp che è pubblica su un host shared Aruba).

    Allora uso:

    Codice PHP:
    session_save_path('/nomecartella/');
    session_start(); 
    Anche questo funziona.

    L'unica cosa che mi dà problemi, a questo punto, è che ho delle chiamate AJAX a dei files php che chiamano session_start e invariabilmente questi mi sputano fuori:

    codice:
    Warning: session_start() [function.session-start]: open(/nomecartella/sess_52bb972f1083e6ffaa121d0d0c11d655, O_RDWR) failed: No such file or directory (2) in ......../pagina.php on line 22
    e poi

    codice:
    Warning: Unknown: open(/nomecartella/sess_52bb972f1083e6ffaa121d0d0c11d655, O_RDWR) failed: No such file or directory (2) in Unknown on line 0
    
    Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/sessionfiles) in Unknown on line 0
    La cartella esiste, ha permessi 777, i file vengono scritti e le variabili di sessione vengono lette. Insomma tutto funziona. E allora perchè mi scrive questi warnings????

  2. #2
    Che cosa restituisce questo codice?

    Codice PHP:
    var_dump(file_exists('/nomecartella/')): 

  3. #3
    session_save_path('/nomecartella/');

    con il path messo cosi' la cartella viene cercata nella / (root) al posto del sicuramente esistente /tmp

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Grazie della risposta, ho anche trovato l'errore!

    Per qualche motivo se metto il path della cartella relativo e non assoluto funziona. Questo solo nelle pagine chiamate via AJAX... mi sai dare una spiegazione?

    @piero.mac: è esattamente quello che voglio, non voglio avere i files in tmp, comunque ora funziona

  5. #5
    Stai confondendo path fisici (es /var/www/html/dominio.it) e path relativi alla document root.

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Immaginavo che fosse un problema del genere, ma perchè nelle altre pagine del sito se scrivo /nomecartella non dà errore?

  7. #7
    Sei davvero sicuro che non dia errore? E le sessioni funzionano?

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Forse ho capito!

    Il resto del sito usa mod_rewrite per reindirizzare tutte le pagine su index.php (che chiama session_save_path con /nomecartella). Questi files che davano problemi, invece, sono esclusi da mod_rewrite.

    Forse quindi siccome mod_rewrite setta una directory di base il percorso /nomecartella viene inteso come relativo alla document root. E' possibile che sia questo il problema?

  9. #9
    Non credo.

    Perchè non eviti tutti questi problemi ed utilizzi un path assoluto corretto?

  10. #10
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Alla fine ho usato il path assoluto, solo che mi era rimasta la curiosità, ecco tutto!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.