Je cherche un moyen de modifier ou de réinitialiser le fichier .htaccess
pour un site wordpress sans accès au système de fichiers, en travaillant uniquement avec l'interface Web wp-admin et/ou les plugins * (voir ci-dessous l'historique si vous êtes intéressé ou pense que c'est pertinent).
Une recherche rapide sur WordPress SE a révélé quelque chose de prometteur:
Plugin pour éditer le fichier htaccess
J'ai essayé d'installer les deux plugins suggérés ici, mais cela n'a pas fonctionné ** (voir ci-dessous l'explication de la raison pour laquelle ces plugins n'ont pas fonctionné, si vous pensez que c'est pertinent).
Et en cherchant sur google, la seule autre option prometteuse que je puisse trouver est un plugin appelé "WP htaccess Editor", qui prétend faire exactement ce que je veux - il suffit de fournir un éditeur de zone de texte direct pour le .htaccess
. Mais je ne peux pas installer ce plugin. Quand j'essaye, ça échoue, en disant
"Impossible de créer le répertoire. Wp-content/upgrade/wp-htaccess-editor.1.1.12/wp-htaccess-editor".
Comment puis-je modifier ou supprimer un fichier Plugins .htaccess
à l'intérieur de l'interface d'administration de WordPress?
* Histoire précédente
Mon amie a récemment découvert que son site WordPress avait été compromis, contenant des redirections de logiciels malveillants. Elle ne sait pas où il est hébergé ou qui l'accueille. Apparemment, quelqu'un d'autre l'a préparée pour elle il y a plusieurs années et elle n'a pas été en mesure de le contacter récemment. Je ne travaille donc qu'avec l'interface Web wp-admin.
En utilisant un plugin appelé "BackupBuddy", j'ai réussi à télécharger une copie de leur site et à découvrir la source du malware. Le .htaccess
contient des redirections vers des sites de programmes malveillants.
Le problème, c’est que je ne saurais pas comment me débarrasser de ces lignes. Encore une fois, je n'ai pas accès au système de fichiers (j'aurais aimé pouvoir le faire, ce serait une solution si simple).
** Explication de la raison pour laquelle les plug-ins que j'ai essayés ne fonctionnent pas:
Premièrement, l'interface d'administration du plugin wordpress pour la plupart ne fonctionne pas pour moi, car presque toutes les pages (y compris les pages d'installation du plugin) sont redirigées à cause des lignes de programmes malveillants dans htaccess. Heureusement, la méthode d’installation du plug-in "Télécharger un fichier Zip" fonctionne toujours, c’est ainsi que j’ai installé les plugins.
Lorsque j'ai essayé le premier plug-in listé ("WP htaccess Control"), il m'a permis d'accéder aux paramètres du plug-in et de renseigner toutes les options. Il m'a même montré le résultat final qui serait censé être écrit dans .htaccess
(et le résultat était correct) . Le problème est que, en cliquant sur "Enregistrer les modifications", bien que le succès des rapports soit atteint, il semble que rien ne soit fait pour les redirections. Un autre téléchargement via un partenaire de sauvegarde a confirmé que le fichier .htaccess
n'avait pas été modifié.
Le second plugin ("All-in-one htaccess Plugin") est un Catch-22; Avant de faire quoi que ce soit, vous devez lancer une série de tests, mais si vous cliquez sur le bouton "Lancer les tests" de la page des paramètres du plug-in, vous accédez à une page redirigée vers la page du programme malveillant par le .htaccess
. Il m'est donc impossible d'utiliser ce plugin.
Vouscansupprimez des fichiers par plug-in si l'utilisateur PHP du serveur dispose d'autorisations en écriture. L'astuce consiste à le supprimer immédiatement lors de l'activation. Voici un exemple de code de base:
<?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__ ) );
}
Téléchargez comme fichier Zip ou voir le code sur GitHub .
Mais déplacez le site sur un autre serveur! Tant que vous ne pouvez pas contrôler les fichiers par SSH ou FTP, le site sera à nouveau piraté.
Il n'y a pas vraiment beaucoup d'options. (que je connais personnellement). Si vous êtes limité à wp-admin, voici ce que je ferais: voir si vous pouvez trouver qui l'héberge et voir si vous pouvez trouver une adresse IP d'hébergement ou contacter quelqu'un. Tout d'abord pouvez-vous exécuter un whois sur le domaine? Parfois, les informations de contact sont listées ici. Si les informations de contact de votre ami sont présentes, essayez d'aller sur whoishostingthis.com et en tapant dans le domaine pour voir qui est l'hôte et savoir comment le contacter. La plupart des sociétés d'hébergement partagées peuvent vous aider d'une manière ou d'une autre. Enfin, j'ai rencontré quelques personnes qui utilisaient Sucuri Security pour supprimer les logiciels malveillants des sites Web à grand succès. Cela coûtera toutefois 89 $ à votre ami.