IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Sécurité] Php, sessions et accès concurents


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 72
    Points : 71
    Points
    71
    Par défaut [Sécurité] Php, sessions et accès concurents
    Bonjour,

    Je ne sais pas si je poste au bon endroit, mais je cherche désespérément à comprendre pourquoi quand je lance un long script avec php sur un site d'un serveur donné, je ne peux pas naviguer sur le site tant que le premier script n'a pas fini son exécution.

    J'ai lu dans un bouquin qu'il s'agissait probablement d'une sécurité de php avec les accès concurrents aux sessions mais même en virant le session_start, le problème semble être toujours présent.

    Ce livre parle aussi d'une fonction session_readonly() qui serais censée remplacer session_start mais avec une session en lecture seule. Seulement cette fameuse fonction parait ne plus exister.

    Mon problème serait t'il du aux navigateurs qui limitent volontairement le nombre de connections simultanées à un site, à php et les sessions, ou à des bridages d'apache ?

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 41
    Points : 41
    Points
    41
    Par défaut
    Bonjour,
    c'est pas vraiment clair... Si j'ai bien compris lorsque vous ouvrez votre page vous ne pouvez pas faire d'action avant la fin de l'éxécution du script php de la page (relativement long) ? C'est ça ?
    Si c'est le cas, je ne pense pas quele problème soit lié aux accès concurrents mis plus dans l'organisation du script (ou l'optimisation)... Pouvez-vous décrire le script qui est éxécuté, ce qu'il fait pourquoi et/ou comment ? Eventuellement un bout de code...
    Merci

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 72
    Points : 71
    Points
    71
    Par défaut
    En fait je ne constate réellement le problème que lorsque le script que je lance est long à s'exécuter. En l'occurrence, c'est un script de sauvegarde de la bdd.

    Tant qu'il n'a pas terminé son exécution, je ne peux pas naviguer sur mon site. Sauf si je change de navigateur, ou bien que j'appelle le même site par une adresse différente.

    Exemple :
    Quand je lance la sauvegarde sur monSite.mondomaine.com, je peux encore naviguer sur ce même site avec l'autre adresse @ip/monSite.

    C'est un peu comme si ça ne le fesais que lorsqu'il s'agit de la même session. J'ai pensé aux verrouillages des tables de la sauvegarde, mais il n'y en a pas dans ce script.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 72
    Points : 71
    Points
    71
    Par défaut
    Bonjour à tous,

    Je reviens vers vous pour vous faire part de mes découvertes concernant les accès concurrents à une session avec php.

    Dans un premier temps, j'ai configuré firefox afin qu'il puisse exécuter plusieurs requêtes simultanément sur le même site :

    http://forevergeek.com/open_source/m...fox_faster.php

    Ensuite j'ai utilisé session_write_close() dans les scripts longs à s'exécuter et qui ne nécessitaient pas les sessions.

    Cette solution déverrouille l'accès à la session et la navigation sur le site si on exécute un script de sauvegarde par exemple.

  5. #5
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Honnêtement, c'est jamais bon d'utiliser un système que l'on est en train de sauvegarder. C'est comme un système quantique : observer l'état du système peut faire changer ce même état.
    Est-ce vraiment une nécessité de pouvoir naviguer dessus pendant la sauvegarde ?
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

Discussions similaires

  1. Réponses: 3
    Dernier message: 03/08/2011, 15h06
  2. Augmenter durée sessions sans accès à php.ini
    Par ver_for dans le forum Langage
    Réponses: 3
    Dernier message: 24/10/2008, 21h15
  3. [Sécurité] Securité session php
    Par saturn1 dans le forum Langage
    Réponses: 4
    Dernier message: 13/04/2008, 14h06
  4. [Sécurité] les sessions en php
    Par pas30 dans le forum Langage
    Réponses: 3
    Dernier message: 14/05/2007, 23h46
  5. Réponses: 7
    Dernier message: 18/03/2006, 13h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo