倉藍

          日記本

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            23 Posts :: 0 Stories :: 1 Comments :: 0 Trackbacks
          其實之前早就存在這樣一個問題,只是沒有時間去考慮是否會影響到整個網站結構的內部優化。忙里偷閑之中我無意找到了解決方案在網上找到的,程序是PHP的,在這里轉載分享一下,也希望在以后能夠利用方便一點。

          首先設置.htaccess文件,將動態調用的參數轉換為靜態的HTML的URL地址,例如將在post目錄下的文件,轉發到根目錄的wp- post.php文件中,加入的語句類似:RewriteRule ^post/([a-z0-9\-]+\.html)$ wp-post.php?$1$2

          然后修改wp-post.php文件,在文件的開頭加入以下PHP代碼:

          以下為引用的內容:

          ob_start();

          $qstring = isset($_SERVER["QUERY_STRING"]) ? $_SERVER["QUERY_STRING"] : "";

          define("HTML_FILE", $_SERVER['DOCUMENT_ROOT']."/post/".$qstring);

          if (file_exists(HTML_FILE))

          {

          $lcft = filemtime(HTML_FILE);

          if (($lcft + 3600) > time()) //判斷上次生成HTML文件是否超過1小時,若沒有才直接輸出文件內容

          {

          echo(file_get_contents(HTML_FILE));

          exit(0);

          }

          }

          之后是現有的PHP的代碼,然后在當前代碼的最后面加上如下的PHP代碼:

          以下為引用的內容:

          define("HTMLMETA","");

          $buffer = ob_get_flush();

          $fp = fopen(HTML_FILE, "w");

          if ($fp)

          {

          fwrite($fp, $buffer.HTMLMETA);

          fclose($fp);

          }

          好了,然后查看你的靜態HTML頁面,如果頁面尾部出現了注釋行,說明已經成功的創建了靜態HTML文件。

          這個方法的一個應用就是我先前寫的那個“WordPress年度博客統計插件”,這個統計插件由于查詢十多次數據庫,很多人訪問的時候會有很大性能問題,使用我介紹的這種動態生成HTML技術后,一天就查詢一次,生成一次統計排行,完美解決了查詢數據庫的性能問題。

          posted on 2013-09-27 11:14 cangshi 閱讀(175) 評論(0)  編輯  收藏 所屬分類: php
          主站蜘蛛池模板: 图木舒克市| 漳州市| 桐城市| 长沙县| 闻喜县| 菏泽市| 邵武市| 七台河市| 德清县| 桂东县| 明水县| 克拉玛依市| 兰州市| 井冈山市| 鄂托克旗| 安康市| 靖江市| 榕江县| 抚远县| 平乐县| 环江| 通化县| 慈利县| 青川县| 牙克石市| 兰考县| 胶南市| 遂溪县| 永寿县| 边坝县| 左贡县| 六枝特区| 梁平县| 施秉县| 东莞市| 信阳市| 阜宁县| 合作市| 罗田县| 体育| 雷山县|