¿Cuándo se elige FS_METHOD = 'direct'?
12 abr 2014, 07:02:26
Vistas: 15.3K
Votos: 8
Según el Código de WordPress FS_METHOD = 'direct'
se elige cuando es apropiado.
(Preferencia Principal) "direct" fuerza el uso de solicitudes de E/S de Archivo Directo desde PHP, lo cual puede abrir problemas de seguridad en hosts mal configurados. Esto se elige automáticamente cuando es apropiado.
http://codex.wordpress.org/Editing_wp-config.php#WordPress_Upgrade_Constants
¿Cuáles son los criterios para que sea apropiado?

ironsand
569
Todas las respuestas a la pregunta
1
1
Aquí está el código de wp-admin/includes/file.php:
if ( ! $method && function_exists('getmyuid') && function_exists('fileowner') ){
if ( !$context )
$context = WP_CONTENT_DIR;
// Si el directorio no existe (wp-content/languages) entonces usa el directorio padre
// ya que lo crearemos.
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);
}
}
La prueba parece ser:
- ¿Podemos crear un archivo temporal en el directorio wp-content o wp-content/languages?
- ¿Pertenece ese archivo al usuario Unix actual, es decir, no hay setuid en wp-content?
Solo ejecuta esta verificación si no especificamos un FS_METHOD nosotros mismos, y si las llamadas necesarias al sistema de archivos para verificar el punto #2 están disponibles. El archivo temporal se elimina después.

Rup
4.39K
17 abr 2014 01:35:21
Preguntas relacionadas
3
respuestas