2016-08-30 7 views
0
Arbeits

Server In Hosting setzen wir eine 777 Berechtigung für Ordner, aber wir können die Dateien in Ordnern nicht schreiben, und auch überprüfen wir die is_writable PHP-Code die Berechtigung zu überprüfen,Ordner Erlaubnis 777 nicht

if (is_writable($dir)) { 
    echo $dir, ' is writable'; 
    } else { 
    echo $dir, ' is NOT writable'; 
} 

aber sein Erscheinen "ist NICHT schreibbar"

+0

Wenn PHP sagt, dass es nicht beschreibbar ist, dann ist es definitiv nicht beschreibbar. Egal, wie sehr Sie glauben mögen, dass PHP einen Fehler gemacht oder gelogen hat. es tat es nicht. Du hast den Fehler irgendwo gemacht; Du weißt es einfach nicht. 'var_dump ($ dir)' Wenn es ein relativer Pfad ist, benutze 'var_dump (realpath ($ dir))'. Bestätigen Sie Ihre Zweifel mit Fakten. – Sherif

Antwort

1

Überprüfen Sie den selinux Kontext (Befehl: ls -Z/directory_path) dieses Ordners.
Es wird angenommen, dass httpd_sys_content_t für Apache http. Wenn es nicht eingestellt ist, dann ändere es zu diesem.

chcon -h system_u: object_r: httpd_sys_content_t/directory_path

0

können Sie Ihre Dateinamen überprüfen. oder Dateipfad.

BAKUSE Ihre Verwendung Stil ist korrekt.

Vielleicht ein bisschen nachlässig. Vielen Dank.

<?php 
$file= 'try.txt'; 
if (is_writable($file)) {  
echo 'writable'; 
} else {  
echo 'not writable';} 
?> 
Verwandte Themen