Maison  >  Article  >  développement back-end  >  Que signifie php statique ?

Que signifie php statique ?

青灯夜游
青灯夜游original
2023-01-04 18:19:153995parcourir

La staticisation PHP consiste à afficher les pages générées par le site Web devant les visiteurs sous forme de HTML statique ; la staticisation PHP est divisée en staticisation pure et pseudo-staticisation. La différence entre les deux réside dans les différents mécanismes de traitement utilisés par PHP. générer des pages statiques. La statique pure consiste à enregistrer la page dynamique générée par PHP dans un fichier HTML statique. L'utilisateur accède à la page statique au lieu de régénérer la même page Web à chaque visite de l'utilisateur, ce qui peut réduire la surcharge du serveur. Pseudo-statique fait référence à la conversion de l'adresse URL d'une page dynamique en une adresse URL similaire à une page statique pour faciliter l'inclusion par les moteurs de recherche.

Que signifie php statique ?

L'environnement d'exploitation de ce tutoriel : système Windows 7, version PHP 8, ordinateur DELL G3

Qu'est-ce que PHP statique

La simple compréhension de PHP statique consiste à afficher les pages générées par le site Web. Sous forme de HTML statique Devant les visiteurs, la staticisation PHP est divisée en statique pure et pseudo-staticisation. La différence entre les deux réside dans le mécanisme de traitement de PHP générant des pages statiques.

Purement statique : il enregistre la page dynamique générée par PHP dans un fichier HTML statique, et l'utilisateur accède à la page statique au lieu de régénérer la même page Web à chaque visite de l'utilisateur

L'avantage est de réduire la surcharge du serveur,

Si vous subdivisez le statique pur, il peut être divisé en « statique pur partiel » et « tout statique pur » :

  • Statique partiel : y a-t-il des données partielles dans le fichier statique généré ou sont-elles obtenues dynamiquement grâce à la technologie ajax ;

  • complètement statique : c'est-à-dire qu'il n'y a pas d'acquisition dynamique de données, le contenu provient donc de pages HTML statiques

pseudo-statique : fait référence à la conversion de l'adresse URL de la page dynamique en quelque chose de similaire à un statique Le processus de création de l'adresse URL de la page

est en fait un accès dynamique. Son essence est de générer dynamiquement des données. L'URL que vous visitez est similaire à "http://yourhost,com/index/post/12. ", qui est une adresse statique. Cette adresse est principalement visible dans les adresses de blog, mais en mode pseudo-statique, l'URL que vous visitez est en fait analysée par le serveur et sera toujours analysée en une adresse similaire à " http://votrehôte ,com/?c=index&a=post&id=12". On l'appelle donc pseudo-statique

Avantages du pseudo-statique : beau ; facile à inclure dans les moteurs de recherche

Pseudo-statique PHP : utilisez Apache mod_rewrite pour implémenter la réécriture d'URL .

Pourquoi devrions-nous rendre les pages Web statiques

1. Accélérez l'ouverture des pages et la vitesse de navigation. Les pages statiques n'ont pas besoin de se connecter à la base de données et la vitesse d'ouverture est considérablement améliorée par rapport aux pages dynamiques.

2. Il est bénéfique pour l'optimisation des moteurs de recherche SEO, Baidu, Google donnera la priorité à l'inclusion des pages statiques, qui sont non seulement incluses rapidement mais également complètement

3. appeler la base de données système ; 4. Le site Web est plus sécurisé et les pages HTML ne seront pas affectées par les vulnérabilités liées à PHP ; Si vous regardez des sites Web plus grands, ce sont essentiellement des pages statiques, et elles peuvent réduire les attaques et empêcher l'injection SQL.

Lorsqu'une erreur de base de données se produit, l'accès normal au site Web ne sera pas affecté.

Bien que la génération d'articles HTML soit plus fastidieuse en fonctionnement et plus compliquée en procédures, ces sacrifices en valent toujours la peine afin d'être plus pratique pour la recherche, plus rapide et plus sûre.

Comment générer des pages HTML statiques avec PHP

Utiliser des modèles PHP pour générer des pages statiques

Les modèles PHP sont très pratiques pour réaliser la statique. Par exemple, vous pouvez installer et utiliser PHP Smarty pour réaliser un site Web statique. , ou vous pouvez en écrire un vous-même Règles d'analyse de modèles, règles de modèles communes qui peuvent imiter divers cms.

1. Utilisez la fonction de lecture et d'écriture de fichiers PHP et le mécanisme de cache ob pour générer des pages statiques

Par exemple, l'adresse de la page de détails dynamique d'un produit est : http://xxx.com?goods.php?gid=112

Nous voilà donc. Lisez une fois le contenu de cette page de détails en fonction de cette adresse, puis enregistrez-le en tant que page statique la prochaine fois que quelqu'un visitera l'adresse dynamique de cette page de détails du produit, nous pourrons directement générer le fichier de contenu statique correspondant. a été généré.

<?php
$gid = $_GET [ &#39;gid&#39; ]+0; //商品id
$goods_statis_file = "goods_file_" . $gid . ".html" ; //对应静态页文件
$expr = 3600*24*10; //静态文件有效期,十天
if ( file_exists ( $goods_statis_file )){
   $file_ctime = filectime ( $goods_statis_file ); //文件创建时间
      if ( $file_ctime + $expr -->time()){ //如果没过期
       echo file_get_contents ( $goods_statis_file ); //输出静态文件内容
          exit ;
      } else { //如果已过期
          unlink( $goods_statis_file ); //删除过期的静态页文件
          ob_start();
  
             //从数据库读取数据,并赋值给相关变量
  
             //include ("xxx.html");//加载对应的商品详情页模板
  
             $content = ob_get_contents(); //把详情页内容赋值给$content变量
             file_put_contents ( $goods_statis_file , $content ); //写入内容到对应静态文件中
             ob_end_flush(); //输出商品详情页信息
      }
} else {
  ob_start();
  
  //从数据库读取数据,并赋值给相关变量
  
  //include ("xxx.html");//加载对应的商品详情页模板
  
  $content = ob_get_contents(); //把详情页内容赋值给$content变量
  file_put_contents ( $goods_statis_file , $content ); //写入内容到对应静态文件中
  ob_end_flush(); //输出商品详情页信息
  
}
  
?>

2. Utilisez nosql pour lire le contenu de la mémoire (en fait, ce n'est pas statique mais du cache)

Prenons l'exemple de memcache :

<?php
$gid = $_GET [ &#39;gid&#39; ]+0; //商品id
$goods_statis_content = "goods_content_" . $gid ; //对应键
$expr = 3600*24*10; //有效期,十天
  
$mem = new Memcache;
$mem --->connect( &#39;memcache_host&#39; , 11211);
  
$mem_goods_content = $mem ->get( $goods_statis_content );
  
  
  
if ( $mem_goods_content ){
   echo $mem_goods_content ;
} else {
  ob_start();
  
  //从数据库读取数据,并赋值给相关变量
  
  //include ("xxx.html");//加载对应的商品详情页模板
  
  $content = ob_get_contents(); //把详情页内容赋值给$content变量
  $mem ->add( $goods_statis_content , $content , false, $expr );
  ob_end_flush(); //输出商品详情页信息
  
}
  
?>

memcached est une correspondance biunivoque entre la clé et valeur, et la clé est par défaut. La taille maximale ne peut pas dépasser 128 octets. La taille par défaut de la valeur est de 1 Mo, donc la taille de 1 Mo peut répondre aux besoins de stockage de la plupart des pages Web.

Apprentissage recommandé : "

Tutoriel vidéo 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!

Déclaration:
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