Möchten Sie 404-Fehler auslösen, wenn die URL eine bestimmte Zeichenfolge enthält – WordPress

Lesezeit: 5 Minuten

Ich verwalte einen WordPress-Blog und möchte einen 404-Fehler auslösen, wenn die URL ein Zeichenfolgenmuster enthält (Beispiel: wenn die URL „thisisnotwanted“ enthält). Ich dachte, ich könnte der htaccess-Datei etwas hinzufügen wie: Redirect “das ist nicht erwünscht“404

Kann jemand helfen? Ich möchte nur nicht, dass Google Seiten mit diesem Parameter indexiert.

  • Hast du es geschafft, die Lösung zu finden?

    – Michael Pater

    14. März 2011 um 9:48 Uhr

Benutzeravatar von Michiel Pater
Michiel Pater

Wenn Sie Google die Indizierung von Seiten verbieten möchten, sollten Sie a hinzufügen robots.txt Datei in den Stammordner Ihrer Website.

Dann könntest du so etwas in die Datei einfügen:

User-agent: *
Disallow: /thisisnotwanted

Ich nehme an, Sie möchten die Seite von allen Suchmaschinen verbieten, aber wenn Sie nur Google verbieten möchten, sollten Sie die erste Zeile auf ändern User-agent: Google.

Mit können Sie Google explizit anweisen, die Links zu entfernen Webmaster werkzeuge. Es kann einige Tage dauern, bis Google Ihre Anfrage akzeptiert und die Seiten aus seinem Index entfernt.

Weitere Informationen finden Sie auf dieser Website:
Die Web Robots-Seiten

  • Danke Leute für eure Antworten. Ich habe diesen Eintrag in robots.txt. Aber irgendwie hat Google sie nicht aus dem Index entfernt. Ich habe mich gefragt, ob das Auslösen von 404 helfen würde, diese über 2000 Seiten aus dem Index zu entfernen, die von Google gecrawlt wurden (aufgrund eines von mir verwendeten Plugins). Nochmals vielen Dank für Ihre Vorschläge. Wenn Sie einen alternativen Vorschlag haben, lassen Sie es mich bitte wissen. Vielen Dank.

    – Gleicher

    14. März 2011 um 9:02 Uhr


Dies könnte mit robots.txt erreicht werden, aber da Sie fragen, wie Sie die 404-Seite manuell werfen können, hier ist es:

<?php
if ( preg_match('/thisisnotwanted/i',$_SERVER["REQUEST_URI"]) ) {
    header("HTTP/1.0 404 Not Found - Archive Empty");
    require TEMPLATEPATH.'/404.php';
    exit;
}
get_header();
?>

Dieses Codestück ist nur ein Beispiel dafür, wie Sie eine 404-Seite anzeigen können, und es sollte nicht in der „Produktion“ verwendet werden, sondern stattdessen robots.txt verwenden, wie von Michiel Pater vorgeschlagen.

  • Danke für die Antworten Leute. Ich habe dieses Muster bereits in der robots.txt-Datei. Irgendwie werden diese Seiten immer noch im Index angezeigt. Da es schwierig ist, die Webmaster-Tools manuell einzuspeisen (um die URLs zu entfernen, da sie sich nicht in einem Verzeichnis befinden), dachte ich, ich könnte einfach 404 auslösen und sie schneller entfernen lassen.

    – Gleicher

    14. März 2011 um 9:00 Uhr

  • @Sameer: ​​Das ist richtig. Google entfernt die Seiten nicht sofort aus ihrem Index. Nun, das erklärt einiges. Sie sollten diese Informationen zu Ihrer Antwort hinzufügen. Versuchen Sie auch, den Code von @poelinca zu verwenden.

    – Michael Pater

    14. März 2011 um 9:04 Uhr

  • Die Verwendung dieses Codestückchens zeigt die 404-Seite, selbst wenn ein Benutzer die Seite anfordert, es wird nicht getestet, ob die Seite von Google angefordert wurde oder nicht. Da also niemand auf die Seite/den Beitrag zugreifen könnte, wäre es einfacher, dies zu tun Seite/Beitrag nicht mehr öffentlich von wp-admin . Wenn Sie die Seite dem normalen Benutzer anzeigen müssen und nicht indiziert werden, besteht die einzige Möglichkeit darin, robots.txt zu verwenden und zu warten, bis Google die Seiten/Posts aus ihrem Index entfernt. Stellen Sie außerdem sicher, dass die Posts/Seiten nicht darin enthalten sind die XML-Datei, die Sie in Google Webmaster-Tools hochladen.

    – Poelinka Dorin

    14. März 2011 um 9:12 Uhr

  • Was passiert war, war, dass ich ein Kommentar-Plugin benutzte, dem “replytocom” als Parameter übergeben wurde, wenn jemand auf die Kommentare von irgendjemandem antworten wollte. Dieser Link wurde auch von Goog aufgegriffen. Und alle Seiten auf der Website mit Kommentaren wurden so oft repliziert, wie Kommentare auf der Seite vorhanden waren. ZB: wenn meine Seite war mysite.com/category/file1.html – und das hat 20 Kommentare. Zusätzlich zu diesem Beitrag hatte ich 20 weitere Dateien wie mysite.com/category/file1.html?replytocom=1234, mysite.com/category/file1.html?replytocom=12345 etc etc .. wobei “12345” etc die Kommentar-IDs waren.

    – Gleicher

    14. März 2011 um 9:34 Uhr


Benutzeravatar von Danial
Daniel

Sie könnten eine bedingte Anweisung in Ihrer Designdatei festlegen, um den Betrachter auf die 404-Seite umzuleiten.

mit diesem Code:

$wp_url = $_SERVER["REQUEST_URI"] //from poelinca
if(preg_match('/thisisnotwanted/',$wp_url)) header('location:/404page');

  • get_bloginfo(‘url’ / ‘home’) – Gibt die ‘Site-Adresse (URI)’ zurück, die in Einstellungen > Allgemein eingestellt ist. Diese Daten werden aus dem ‘????’ Eintrag in der Tabelle wp_options. Erwägen Sie stattdessen die Verwendung von home_url(). Und es wird nicht die angeforderte URL abgerufen, sondern die URL der Startseite. Bitte seien Sie vorsichtig, bevor Sie eine Antwort posten.

    – Poelinka Dorin

    14. März 2011 um 8:53 Uhr

  • Sie leiten den Benutzer auf die 404-Fehlerseite um. Das ist schlechte Praxis. Es ist besser, einen 404-Header wie @poelinca zu verwenden.

    – Michael Pater

    14. März 2011 um 8:56 Uhr

  • Sie haben meinen Punkt immer noch nicht verstanden, get_bloginfo(‘url’) oder home_url() oder get_blobinfo(‘home’) geben alle denselben Link auf jeder Seite zurück, sagen wir, ich beantrage www.example.com/category/post_name, home_url wird gebe www.example.com zurück und zum Testen der nicht gewünschten Zeichenfolge brauche ich stattdessen category/post_name .

    – Poelinka Dorin

    14. März 2011 um 9:03 Uhr


  • @poelinca: Ich habe es verstanden. Nur einen Fehler gemacht, das ist alles.

    – Daniel

    14. März 2011 um 9:07 Uhr

Mit mod_rewrite wäre es so etwas wie

RewriteEngine on
RewriteCond %{THE_REQUEST} thisisnotwanted[\ /?].*HTTP/
RewriteRule ^.*$ - [R=404,L]

in einer .htaccess

1427430cookie-checkMöchten Sie 404-Fehler auslösen, wenn die URL eine bestimmte Zeichenfolge enthält – WordPress

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy