Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/08/2007, 16h41   #1
Invité régulier
 
Inscription : juin 2005
Messages : 87
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 87
Points : 8
Points : 8
Envoyer un message via MSN à mathieu3392
Par défaut [Sécurité] Les sessions ne se créent plus ?

Bonjour, je suis le webmaster de plusieurs sites que j'administre sur un serveur dédié OVH.

J'ai un problème depuis deux jours, mes scripts de connexion Backoffice semblent ne plus pouvoir créer de sessions ! J'aimerai savoir s'il y a eu une modif suite à une faille de sécurité ou si mon code est bon :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?
session_start();
$sb_login       =    $_POST['sb_login'];
$sb_password    =    $_POST['sb_password'];
 
include("../connexion.php");
 
$query="SELECT * From admins where login='$sb_login' and password='$sb_password' and valide='1'";
$result=MYSQL_QUERY($query);
$row=mysql_fetch_array($result);
 
$num = mysql_num_rows($result);
 
if ($num == 1)
{
$_SESSION["sb_login"]       =   $sb_login;
$_SESSION["sb_password"]    =   $sb_password;
$_SESSION["sb_nom"]         =   $row["nom"];
$_SESSION["sb_prenom"]      =   $row["prenom"];
$_SESSION["sb_mail"]        =   $row["mail"];
$_SESSION["sb_rights"]      =   $row["rights"];
 
header("Location: index.php");
}else{
 
header("Location: form.php");
}
?>
Voilà c'est assez basique comme code, mais fonctionnel jusqu'à il y a deux jours.

Alors :
1 . c'est un problème venant de mon script et donc de PHP
2 . soit OVH a installé une release sur ma machine qui a changé un paramètre de config.

Je pense que c'est plus une problème de configuration puisque le problème survient sur TOUS les sites alors que le script ci-dessus est différent d'un site à l'autre.

J'ai regardé le phpinfo() du serveur, je vois rien au premier coup d'oeil qui ai changé dans Sessions.

Help me please!

Thx
mathieu3392 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 17h35   #2
Expert Confirmé
 
Avatar de trotters213
 
Inscription : janvier 2005
Messages : 2 572
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Gard (Languedoc Roussillon)

Informations forums :
Inscription : janvier 2005
Messages : 2 572
Points : 2 605
Points : 2 605

Vu que tes sites sont en productions je suppose que tu as désactive les warning et les notices.
Si ça ne l'est pas déjà, met error_reporting à "E_ALL | E_STRICT").
Et dis nous s'il y a une erreur qui s'affiche ou pas.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
error_reporting(E_ALL | E_STRICT);
 
session_start();
$sb_login       =    $_POST['sb_login'];
$sb_password    =    $_POST['sb_password'];
 
require_once '../connexion.php';
 
$query="SELECT * FROM admins WHERE login='$sb_login' and password='$sb_password' and valide='1'";
$result=mysql_query($query);
$row=mysql_fetch_array($result);
 
if (mysql_num_rows($result) == 1)
{
$_SESSION['sb_login']       =   $sb_login;
$_SESSION['sb_password']    =   $sb_password;
$_SESSION['sb_nom']         =   $row['nom'];
$_SESSION['sb_prenom']      =   $row['prenom'];
$_SESSION['sb_mai']        =   $row['mai'];
$_SESSION['sb_rights']      =   $row['rights'];
 
header('Location: index.php');
}else{
 
header('Location: form.php');
}
?>
PS : E_STRICT existe seulement à partir de PHP 5
__________________
Pensez au tag
Les règles du Forum

Dev. Web : FAQ (X)HTML/CSS | Tutos (X)HTML | Tutos CSS

PHP : FAQ PHP | Tutos PHP | Benchmark PHP 5

SQL : Cours SQL
trotters213 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 17h58   #3
Invité régulier
 
Inscription : juin 2005
Messages : 87
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 87
Points : 8
Points : 8
Envoyer un message via MSN à mathieu3392
bon je crois que c'est clair :

Citation:
Warning: session_start() [function.session-start]: open(/tmp/sess_a9c281d6db24f1945984812a526c8a27, O_RDWR) failed: No space left on device (28) in /home/xxx/www/backoff/login.php on line 3

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/rigfm/www/backoff/login.php:3) in /home/xxx/www/backoff/login.php on line 3

Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0
la question est : comment agrandir cette partition, ou empecher ce pbleme?
mathieu3392 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 18h06   #4
Expert Confirmé
 
Avatar de trotters213
 
Inscription : janvier 2005
Messages : 2 572
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Gard (Languedoc Roussillon)

Informations forums :
Inscription : janvier 2005
Messages : 2 572
Points : 2 605
Points : 2 605
bè tu peux définir un temps d'expiration à ta session afin de ne pas garder des sessions trop veilles sur ton serveur.
Jette peut-être un coup d'oail à ceci : http://cyberzoide.developpez.com/php4/faqsession/
__________________
Pensez au tag
Les règles du Forum

Dev. Web : FAQ (X)HTML/CSS | Tutos (X)HTML | Tutos CSS

PHP : FAQ PHP | Tutos PHP | Benchmark PHP 5

SQL : Cours SQL
trotters213 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 18h09   #5
Invité régulier
 
Inscription : juin 2005
Messages : 87
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 87
Points : 8
Points : 8
Envoyer un message via MSN à mathieu3392
j'en ai pas tant que ca des sessions, c bizarre
ya des ressources qui se libérent mal quelque part ?
Dans le répertoire /tmp/ il n'y avait que 4 fichiers session; c pa énorme...
Ou alors je devrais créer un dossier Sessions pour chaque site ? comment ?

Merci
mathieu3392 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 18h24   #6
Invité régulier
 
Inscription : juin 2005
Messages : 87
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 87
Points : 8
Points : 8
Envoyer un message via MSN à mathieu3392
c bon j'ai changé le répertoire /tmp par défaut par un autre.

Voilà c'est réglé merci pour tout
mathieu3392 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h07.


 
 
 
 
Partenaires

Hébergement Web