FAQ Hébergement professionnel NFrance

Hébergements mutualisés - Contournement du Safe Mode

Voici de petits scripts vous permettant de contourner les restrictions liées au Safe Mode lors de vos programmations.

Le Safe Mode est activé par défaut sur tout nos hébergements mutualisés professionnels et grand public, sauf Web1. Cela nécéssite parfois quelques adaptations, nottamanent lors de la création de répertoires récursifs par php ou l'upload de fichiers.

Création d'un répertoire d'upload par Apache avec définition de permissions

Lorsque vous souhaitez créer un répertoire dynamiquement, pour l'upload d'images par exemple, le Safe Mode rentre souvent en action pour vous interdire l'accès au répertoire crée par la fonction mkdir() à cause de mauvais uids. Nous vous proposons de passer par la fonction ftp_mkdir() pour contourner ce problème.

<?php
 
$dir = 'repertoire';
$ftp_server = 'ftp.votredomaine.com';
$ftp_user_name = 'username';
$ftp_user_pass = 'password';
 
// Mise en place d'une connexion basique
$conn_id = ftp_connect($ftp_server);
 
// Identication avec un nom d'utilisateur et un mot de passe
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
 
// Se déplacer dans le dossier "html"
if (ftp_chdir($conn_id, "html")) {
   echo "Le dossier courant est maintenant : " . ftp_pwd($conn_id) . "\n";
} else {
   echo "Impossible de changer de dossier\n";
}
 
// Tentative de création du dossier $dir
if (ftp_mkdir($conn_id, $dir)) {
 echo "Le dossier $dir a été créé avec succès\n";
} else {
 echo "Il y a eu un problème lors de la création du dossier $dir\n";
}
echo "<br><br>";
 
$command = 'chmod 0777 '.$dir;
if (ftp_site($conn_id, $command)) {
   echo "$command a été exécuté avec succès\n";
} else {
   echo "Impossible d\'exécuter : $command\n";
}
 
// Fermeture de la connexion
ftp_close($conn_id);
?>

Cela vous permettra de créer des répertoires récursivement et dynamiquement par Apache, dans lesquels vous pourrez uploader par la suite, sans dépendre du safe mode.

11 décembre 2006
Support Technique NFrance

 
pro/mutualises/safe_mode.txt · Dernière modification: 2007/10/04 15:17 (édition externe)
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki