Maison > développement back-end > tutoriel php > Exemples de méthodes pour empêcher la collecte d'URL cryptées PHP

Exemples de méthodes pour empêcher la collecte d'URL cryptées PHP

小云云
Libérer: 2023-03-21 21:40:01
original
2775 Les gens l'ont consulté

Cet article partage principalement avec vous des exemples de méthodes pour empêcher la collecte d'URL cryptées PHP. J'espère qu'il pourra aider tout le monde.

Il existe de nombreux outils de collecte sur Internet, comment les collectent-ils ?

Ces URL sont très régulières et sont composées de (blog-) + chiffres. La collection utilise ce modèle d'URL pour collecter automatiquement des pages Web dans une large mesure.

Comment mieux empêcher la collecte du site Web ? Nous pouvons crypter la partie (numéro clé) de l'URL.

Fournit une méthode de cryptage, l'URL cryptée générée est une méthode de cryptage à nombre courte, stable et non aléatoire, conviviale pour le référencement. L'algorithme effectue ses propres recherches.

/**
 * 加密数字方法
 *   echo idEncode(222);
 * @author uuleaf[<uuleaf#163.com>] 小叶
 * @param int $int 要加密的数字
 * @return string 加密后的字符串
 */
function idEncode($int)  
{  
    $str = md5($int);  
    $sarr = str_split($str);  
    $stai = (ord($str) + 8) % 10;  
    if ($stai == 0) $stai = 8;  
    $idstr = base_convert($int * $stai, 10, 32);  
    $str1 = substr($str, 10, 2);  
    $str2 = substr($str, 14, 2);  
    $str3 = substr($str, 18, 2);  
    return $str1 . $idstr . $str2 . $stai . $str3;  
}  

解密方法

/**
 * 解密数字方法
 *   echo idDncode("");
 * @author uuleaf[<uuleaf#163.com>] 小叶
 * @param string $str 要解密的数字
 * @return int 解密后的数字
 */
function idDecode($str)  
{  
    $idstr = substr(substr($str, 2), 0, -5);  
    $ji = base_convert($idstr, 32, 10);  
    $si = (int)substr($str, -3, -2);  
    return floor($ji / $si);  
}
Copier après la connexion

Test

  1. echo "加密前的网址:http://thinkphp.cn/blog-54.html";  
    echo "\n";  
    $encode_str = idEncode(54);  
    echo "加密后的网址:http://thinkphp.cn/blog-{$encode_str}.html";  
    echo "\n";  
    $decode_str = idDecode($encode_str);  
    echo "还原后的网址:http://thinkphp.cn/blog-{$decode_str}.html";
    Copier après la connexion


    Résultat de sortie >

    3 façons de collecter données en PHP

    Comment collecter des pages d'articles de comptes publics WeChat à l'aide de PHP

    Collection curl d'utilisation PHP

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal