Corretti permessi per Drupal in Linux

4 contenuti / 0 new
Ultimo contenuto
Corretti permessi per Drupal in Linux

Ciao a tutti ho sempre lavorato in ambiente windows e ora sto cercando di imparare a lavorare sotto linux (nella fattispecia ho un micrserver hp su cui ho installato ubuntu 10.04 LTS). Ho impostato correttamente il Virtual Host e vi ho caricato il mio sito. Ora Drupal mi da diversi errori e sullo "resoconto dello stato" mi dice che non può accedere in scrittura a diversi directory. Sapreste dirmi come impostare i giusti permessi di file e directory?
Grazie mille

Drupal Version:

A chi può servire ho risolto "parzialmente" così:

[root@localhost]cd /path_to_drupal_installation
[root@localhost]chown -R greg:www-data .
[root@localhost]find . -type d -exec chmod u=rwx,g=rx,o= '{}' \;
[root@localhost]find . -type f -exec chmod u=rw,g=r,o= '{}' \;
[root@localhost]cd /path_to_drupal_installation/sites
[root@localhost]find . -type d -name files -exec chmod ug=rwx,o= '{}' \;
[root@localhost]for d in ./*/files
do
   find $d -type d -exec chmod ug=rwx,o= '{}' \;
   find $d -type f -exec chmod ug=rw,o= '{}' \;
done

Ora come posso configurare il server in modo da permettere al sito di scrivere sul server?

Il duro lavoro fatto con passione, ripaga sempre!!!!

Ciao, io uso uno script php, l'ho messo nella root e lanciato, dopodichè cancellato il file.

<?php
function recursiveChmod($path, $filePerm=0644, $dirPerm=0755) {
 
// Check if the path exists
 
if(!file_exists($path))
  {
     return(
FALSE);
  }
 
// See whether this is a file
 
if(is_file($path)) {
    
// Chmod the file with our given filepermissions
    
chmod($path, $filePerm);
 
// If this is a directory...
 
} elseif(is_dir($path)) {
    
// Then get an array of the contents
    
$foldersAndFiles = scandir($path);
    
// Remove "." and ".." from the list
    
$entries = array_slice($foldersAndFiles, 2);
    
// Parse every result...
    
foreach($entries as $entry) {
       
// And call this function again recursively, with the same permissions
       
recursiveChmod($path."/".$entry, $filePerm, $dirPerm);
     }
    
// When we are done with the contents of the directory, we chmod the directory itself
    
chmod($path, $dirPerm);
  }
 
// Everything seemed to work out well, return TRUE
 
return(TRUE);
}
if (
recursiveChmod("sites", 0644, 0775)) echo "<p>Permission rebuild in <i>sites</i> is done!</p>" ;
        if (
recursiveChmod("sites/default", 0440, 0555)) echo "<p>Permission rebuild in <i>sites/default</i> is done!</p>";
        if (
recursiveChmod("sites/default/files", 0440, 0555)) echo "<p>Permission rebuild in <i>sites/default/files</i> is done!</p>" ;
        if (
recursiveChmod("sites/all", 0644, 0775)) echo "<p>Permission rebuild in <i>sites/default</i> is done!</p>"
?>

Spettacolo! Danzi, eccelsa come sempre!

Il duro lavoro fatto con passione, ripaga sempre!!!!