Quando viene scelto FS_METHOD = 'direct'?
12 apr 2014, 07:02:26
Visualizzazioni: 15.3K
Voti: 8
Secondo il codice di WordPress FS_METHOD = 'direct'
viene scelto quando è appropriato.
(Preferenza primaria) "direct" forza l'utilizzo di richieste di File I/O dirette da PHP, questo può aprire problemi di sicurezza su host configurati male, viene scelto automaticamente quando appropriato.
http://codex.wordpress.org/Editing_wp-config.php#WordPress_Upgrade_Constants
Quali sono i criteri per essere appropriato?

ironsand
569
Tutte le risposte alla domanda
1
1
Ecco il codice da wp-admin/includes/file.php:
if ( ! $method && function_exists('getmyuid') && function_exists('fileowner') ){
if ( !$context )
$context = WP_CONTENT_DIR;
// Se la directory non esiste (wp-content/languages) usa la directory genitore
// poiché la creeremo.
if ( WP_LANG_DIR == $context && ! is_dir( $context ) )
$context = dirname( $context );
$context = trailingslashit($context);
$temp_file_name = $context . 'temp-write-test-' . time();
$temp_handle = @fopen($temp_file_name, 'w');
if ( $temp_handle ) {
if ( getmyuid() == @fileowner($temp_file_name) )
$method = 'direct';
@fclose($temp_handle);
@unlink($temp_file_name);
}
}
Il test sembra verificare:
- Possiamo creare un file temporaneo nella directory wp-content o wp-content/languages?
- Il file appartiene all'utente Unix corrente, ovvero non c'è setuid su wp-content?
Esegue questo controllo solo se non abbiamo specificato un FS_METHOD noi stessi, e se sono disponibili le chiamate di filesystem necessarie per verificare il punto #2. Il file temporaneo viene eliminato al termine.

Rup
4.39K
17 apr 2014 01:35:21
Domande correlate
3
risposte