ホームページ > ウェブフロントエンド > htmlチュートリアル > ページの静的化のいくつかの一般的な方法をマスターする_html/css_WEB-ITnose

ページの静的化のいくつかの一般的な方法をマスターする_html/css_WEB-ITnose

WBOY
リリース: 2016-06-24 11:50:45
オリジナル
1281 人が閲覧しました

ページの静的化には 2 つのタイプがあり、1 つは擬似静的、つまり URL の書き換えであり、もう 1 つは真の静的であるとよく言われます。真の静的化に焦点を当てましょう。

PHP の静的化とは何ですか?

PHP の静的化を簡単に理解すると、Web サイトで生成されたページを静的 HTML の形式で表示することになります。PHP の静的化は、純粋な静的化と疑似静的化の違いです。 2 つは、PHP が生成する静的ページが異なる方法で処理されることです。


Web ページを静的にする理由
1. ページを開く速度と閲覧速度を向上させます。静的ページはデータベースに接続する必要がなく、動的ページよりも大幅に高速です。 SEO)、Baidu と Google は静的ページを優先します。これは、迅速に含まれるだけでなく、完全に含まれます。
3. システム データベースを呼び出さずに Web を閲覧できます。より安全であり、HTML ページは PHP 関連の脆弱性の影響を受けません。大規模な Web サイトの基本を見てください。これらはすべて静的ページであり、攻撃を軽減し、SQL インジェクションを防ぐことができます。
データベースエラーが発生しても、Web サイトへの通常のアクセスには影響しません。
HTML記事を生成する作業はより面倒で手順が複雑になりますが、検索をより便利に、より速く、より安全にするために、これらの犠牲はそれでも価値があります。


PHP で静的 HTML ページを生成する方法

PHP テンプレートを使用して静的ページを生成する
たとえば、PHP Smarty をインストールして使用すると、静的な Web サイトを実現できます。また、テンプレート解析ルールのセットを自分で作成することもできます。さまざまな cms のテンプレート ルールを模倣することができます。


1. PHP ファイルの読み取りおよび書き込み関数と ob キャッシュ メカニズムを使用して静的ページを生成します
たとえば、商品の動的な詳細ページのアドレスは次のとおりです: http://xxx.com?goods.php?gid=112
そこで、このアドレスはこの詳細ページのコンテンツを一度読み取り、次に誰かがこの製品詳細ページの動的アドレスにアクセスしたときに、生成された対応する静的コンテンツ ファイルを直接出力できるようにします。

<!--?php$gid  = $_GET['gid']+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. nosql を使用してメモリからコンテンツを読み取ります (実際には、これは静的ではなくキャッシュです)。

memcache を例に挙げます。および値、キー デフォルトの最大サイズは 128 バイトを超えることはできません。値のデフォルトのサイズは 1M であるため、1M サイズはほとんどの Web ページのストレージ要件を満たします。

上記はページの静的化に関連する方法です。友達に役立つことを願っています

優れた技術記事はすべて www.phpskill.com で毎日更新されます

php 純粋技術学習交換グループ: 323899029



原文: http://www.phpskill.com/html/show-1-4418-1.html

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート