Le serveur a été piraté et mon fichier . Htaccess a été remplacé par une redirection vers un caractère générique (spam).
Je vois beaucoup de requêtes comme celles ci-dessous même après avoir nettoyé mon serveur:
example.com/cobwebbing-gurkha1486mskh27556/64b75843rl69s2/
example.com/countercheck-gurkha1486mskh22793/n4a670a2h43m/
example.com/countercheck-gurkha1486mskh19573/36c9on2137rs/
Comment puis-je changer ces URL en 410 Gone
? Je voudrais les rediriger vers une page que j'ai faite (fail.php) qui émet un en-tête 410.
Voici le htaccess actuel piraté. J'ai essayé de faire en sorte que la fin du fichier (?gurkha
) soit redirigé vers fail.php
mais cela ne semble pas fonctionner. Il continue de passer à la WordPress 404. Le WordPress 404 consomme de la mémoire système et j'aimerais un moyen plus élégant et plus efficace de gérer ces URL.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule ^\/(.*)-(gurkha)([0-9]+)mskh([0-9]+)\/(.*)$ ?gurkha$3=$4&%{QUERY_STRING}[L]
</IfModule>
Je voudrais vraiment obtenir ces URL de google. Comment puis-je changer mon . Htaccess alors ils sont 410 Gone
?
/cobwebbing-gurkha1486mskh27556/64b75843rl69s2/ /countercheck-gurkha1486mskh22793/n4a670a2h43m/ /countercheck-gurkha1486mskh19573/36c9on2137rs/
Pour créer une URL contenant -gurkha
suivi d'un chiffre, échouez tôt avec un système généré 404 (en contournant WordPress). Vous pouvez alors utiliser quelque chose comme celui-ci à l'adresse top de votre fichier .htaccess
:
RewriteRule -gurkha\d - [R=404]
Notez que cela doit aller avant le WordPress _ contrôleur-avant. c'est à dire. avant la directive <IfModule mod_rewrite.c>
. Vous n'avez pas besoin de répéter la directive RewriteEngine
.
UPDATE: Si, toutefois, vous voyez toujours une page WordPress générée 404, il est possible que vous ayez un document d'erreur 404 personnalisé qui pointe vers un document WordPress (par exemple, 404.php
). Vous pouvez rétablir les valeurs par défaut simples d'Apache en incluant les éléments suivants dans votre fichier .htaccess
:
ErrorDocument 404 default
Si vous souhaitez que Google supprime ces URL plus rapidement, vous pouvez remplacer l'indicateur R=404
par G
(gone
) afin qu'il serve un 410 Gone à la place. (Bien que cela avertisse potentiellement les utilisateurs/robots/pirates informatiques - mais ce n'est probablement pas un problème.) Encore une fois, réinitialisez la ErrorDocument
(comme ci-dessus) si vous voyez toujours une page WordPress retournée .
Vous pouvez ensuite utiliser le outil de suppression des URL de la console de recherche Google pour supprimer explicitement ces URL du SERPS.
Une réponse non autorisée 401 ne forcera pas nécessairement Google à supprimer l'URL. Et cela ne fera que soulever davantage de suspicion. (Bien que, il semble que le PO ait initialement désigné par erreur "401" et en réalité "410".)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule ^\/(.*)-(gurkha)([0-9]+)mskh([0-9]+)\/(.*)$ ?gurkha$3=$4&%{QUERY_STRING}[L]
</IfModule>
Vous devriez enlever ce dernier RewriteRule
. Dans l'état actuel des choses, il ne fera rien, mais comporte également plusieurs "erreurs":
.htaccess
par répertoire, le chemin d'URL contre lequel le RewriteRule
pattern ne commence jamais par une barre oblique. Ainsi, cette RewriteRule
ne correspondrait à rien dans ce contexte.# BEGIN WordPress
/# END WordPress
, il sera probablement écrasé lorsque WordPress sera mis à jour.Autres points "moins graves" concernant ce dernier RewriteRule
:
[L]
). Cela pourrait entraîner une réécriture invalide. Et potentiellement causer des problèmes si vous avez ajouté plus de directives plus tard (car il n'y a pas de drapeau L
).\/
) dans une expression rationnelle Apache standard. (Les espaces sont utilisés comme délimiteurs et les barres obliques n'ont pas de signification particulière.)