Editar o eliminar el complemento .htaccess mediante el panel de administración

4

Estoy buscando una forma de editar o restablecer el archivo .htaccess para un sitio de wordpress sin acceso al sistema de archivos, trabajando solo con la interfaz web de wp-admin y / o los complementos * (vea a continuación la historia de fondo si estás interesado o crees que es relevante).

Una búsqueda rápida en WordPress SE reveló algo prometedor:

Plugin para editar el archivo htaccess

Intenté instalar los dos complementos sugeridos allí, pero ninguno funcionó ** (consulte a continuación la explicación de por qué no funcionaron estos complementos, si cree que es relevante).

Y buscando en Google, la única otra opción prometedora que pude encontrar es un complemento llamado "WP htaccess Editor", que pretende hacer exactamente lo que quiero, simplemente proporcionar un editor de cuadro de texto directo para el .htaccess . Pero no puedo instalar este plugin. Cuando lo intento, falla, diciendo

  

"No se pudo crear el directorio. wp-content / upgrade / wp-htaccess-editor.1.1.12 / wp-htaccess-editor".

¿Cómo puedo cambiar o eliminar un archivo de Plugins .htaccess desde la interfaz de administración de WordPress?

* Historia de vuelta

Mi amiga descubrió recientemente que su sitio de WordPress ha sido comprometido, que contiene redirecciones de malware. Ella no sabe dónde está alojado o quién lo está hospedando. Aparentemente, alguien más se lo preparó hace varios años y recientemente no ha podido ponerse en contacto con él. Así que estoy atascado trabajando solo con la interfaz web de wp-admin.

Usando un complemento llamado "BackupBuddy", logré descargar una copia de su sitio y descubrí la fuente del malware. El .htaccess contiene redirecciones a sitios de malware.

El problema es que, por mi vida, no puedo averiguar cómo eliminar estas líneas. Nuevamente, no tengo acceso al sistema de archivos (desearía tenerlo, sería una solución tan simple).

** Explicación de por qué los complementos que probé no funcionaron:

En primer lugar, la interfaz de administrador del plugin de wordpress en su mayor parte no funciona para mí, porque casi todas las páginas (incluidas las páginas de instalación del plugin) redirigen debido a las líneas de malware en htaccess. Afortunadamente, el método de instalación del complemento "cargar archivo zip" todavía funciona, así es como instalé los complementos.

Cuando probé el primer complemento listado ("WP htaccess Control"), me dejó ir a la configuración del complemento y completar todas las opciones e incluso me mostró la salida resultante que supuestamente se escribiría en .htaccess (y la salida se veía bien). El problema es que, al hacer clic en "Guardar cambios", aunque se informó de éxito, no se hizo nada para redireccionar. Otra descarga a través de backup buddy confirmó que el archivo .htaccess no se modificó.

El segundo complemento ("All-in-one htaccess Plugin") es un Catch-22; antes de hacer algo, es necesario que inicie una serie de pruebas, pero al hacer clic en el botón "Iniciar pruebas" en la página de configuración del complemento se accede a una página que se redirige a la página de malware en .htaccess . Por lo tanto, es imposible para mí usar este complemento.

    
pregunta Ben Lee 11.07.2012 - 20:05

2 respuestas

8

Usted puede eliminar archivos por complemento si el usuario de PHP del servidor tiene permisos de escritura. El truco es eliminarlo inmediatamente en la activación. Aquí hay un código de ejemplo básico:

<?php # -*- coding: utf-8 -*-
/**
 * Plugin Name: Delete .htaccess
 * Description: Deletes the .htaccess file on activation, deactivates itself then.
 * Plugin URI:  http://wordpress.stackexchange.com/q/58183/73
 *
 * Delete .htaccess, Copyright (C) 2012 Thomas Scholz
 */

register_activation_hook( __FILE__, 'wpse_58183_delete_htaccess' );
add_action( 'admin_notices', 'wpse_58183_admin_notice' );

function wpse_58183_delete_htaccess()
{
    $root = trailingslashit( $_SERVER['DOCUMENT_ROOT'] );
    unlink( $root . '.htaccess' );
}

function wpse_58183_admin_notice()
{
    echo '<div class="updated"><p><code>.htaccess</code> deleted.<br>Plugin deactivated.</p></div>';
    deactivate_plugins( basename( __FILE__ ) );
}

Descargar como archivo ZIP o vea el código en GitHub .

¡Pero mueva el sitio a otro servidor! Siempre que no pueda controlar los archivos por SSH o FTP, es probable que el sitio sea pirateado nuevamente.

    
respondido por el fuxia 11.07.2012 - 20:34
1

Realmente no hay muchas opciones. (Que yo sepa personalmente). Si está limitado a wp-admin, esto es lo que yo haría: ver si puede encontrar quién lo hospeda y ver si puede encontrar una dirección IP de hosting o ponerse en contacto con alguien. En primer lugar puedes ejecutar un whois en el dominio? A veces la información de contacto se encuentra dentro de allí. Si la información de contacto de su amigo está allí, intente ir a whoishostingthis.com y escriba el dominio para ver quién es el anfitrión y ver cómo contactarlos. La mayoría de las empresas de alojamiento compartido pueden ayudarte de alguna manera. Por último, he conocido a algunas personas que utilizan Sucuri Security para eliminar el malware de los sitios web con gran éxito. Sin embargo, le devolverá a su amigo $ 89.

    
respondido por el Matt Sawyers 11.07.2012 - 20:23

Lea otras preguntas en las etiquetas