Je cours php5, cependant dès que j'appelle session_start() le script se bloque et rien ne se passe. Est-ce que quelqu'un d'autre rencontre ce problème, ou est-ce que je fais quelque chose de mal? J'utilise session_start() sur index.php et, pour une raison quelconque, cela échouera. Pas d'avertissement, pas d'erreur, pas d'avis, même après précédant error_reporting (E_ALL) et ini_set ('display_errors', TRUE) avant session_start() puis-je voir quelque chose, il meurt tout simplement.J'appelle session_start() le script se bloque et rien ne se passe
Répondre
Il y a beaucoup de raisons à cela, voici quelques-uns d'entre eux:
A. Le fichier de session pourrait être ouvert exclusivement. Lorsque le verrou de fichier n'est pas libéré correctement pour une raison quelconque, il entraîne l'arrêt indéfini de session_start() lors des futures exécutions de script. Contournement: utilisez session_set_save_handler() et assurez-vous que la fonction write utilise fopen ($ file, 'w') au lieu de fopen ($ file, 'x')
B. N'utilisez jamais ce qui suit dans votre fichier php.ini (fichier entropique à "/ dev/random"), cela entraînera votre session_start() pour accrocher:
<?php
ini_set("session.entropy_file", "/dev/random");
ini_set("session.entropy_length", "512");
?>
C. session_start() a besoin d'un répertoire pour écrire.
Vous pouvez faire fonctionner Apache plus PHP dans un compte utilisateur normal. Apache devra alors bien entendu écouter un autre port que 80 (par exemple, 8080).
Assurez-vous de faire les choses suivantes: - créer un PREFIX répertoire temporaire/tmp - mis php.ini dans PREFIX/lib - php.ini modifier et définir session.save_path dans le répertoire que vous venez de créer
Sinon, vos scripts sembleront se bloquer sur session_start().
Le premier point est un problème encore plus important avec les processus php à exécution longue, par exemple le gestionnaire d'événements envoyé par le serveur. J'ai eu un moment pour découvrir ce qui n'allait pas - mod_security et apparmor ont été les premiers suspects. – Olli
- 1. riche: fileUpload - Rien ne se passe?
- 2. je change le codebehind fichier, rien ne se passe
- 3. Le script PHP se bloque IE6
- 4. Tutoriel Google Wave Python - Rien ne se passe
- 5. ASP.Net Formulaire envoyer un clic mais rien ne se passe
- 6. octave + gnuplot + os x 10.6: rien ne se passe
- 7. PyQt Drag and Drop - Rien ne se passe
- 8. Boost :: Asio Threaded Server Asynchroun Problème. Rien ne se passe
- 9. rien ne se passe quand je cours rake db: migrer
- 10. Que se passe-t-il si je n'appelle pas session_start()?
- 11. Le débogueur perl se bloque
- 12. script côté serveur pour les pages Web avec Python: rien ne se passe
- 13. Le script PHP/MySQL se bloque après ~ 2500 requêtes
- 14. L'activité se bloque lorsque le service distant se bloque
- 15. case à cocher le remplacement de l'image, rien ne se passe
- 16. httpsURLConnection.getInputStream() se bloque
- 17. move_uploaded_file se bloque?
- 18. Si l'instruction se bloque
- 19. iPhone 3.x et 4.x: shouldAutorotateToInterfaceOrientation renvoie TRUE, mais rien ne se passe
- 20. Désactiver le déclenchement se bloque?
- 21. Le programme C++ se bloque
- 22. jquery se bloque?
- 23. Rien ne se passe après le démarrage d'une application de démarrage Web Java
- 24. Java ProcessBuilder: le processus externe se bloque
- 25. UIActivityIndicatorview se bloque lorsque l'application passe au premier plan iOS4
- 26. iphone - l'animation dans le simulateur fonctionne bien mais dans l'appareil rien ne se passe?
- 27. IMemAllocator: GetBuffer se bloque
- 28. Pourquoi codeigniter ne se bloque pas!
- 29. paramiko SFTP se bloque get
- 30. Python: l'impression ne fonctionne pas, le script se bloque à l'infini
Il meurt ou il se bloque? Je veux dire, la page continue-t-elle à charger pour toujours? Définissez-vous un PHPSESSID? Les fichiers de session sont-ils créés sur le serveur? – nico
Je suppose que votre script est censé avoir une sortie, n'est-ce pas? ("Oui, le grille-pain est branché.") Avez-vous vérifié vos journaux? –