Inhaltsverzeichnis
分享常见的几种页面静态化的方法,分享几种页面静态
Heim Backend-Entwicklung PHP-Tutorial 分享常见的几种页面静态化的方法,分享几种页面静态_PHP教程

分享常见的几种页面静态化的方法,分享几种页面静态_PHP教程

Jul 13, 2016 am 10:10 AM
jsp 页面静态化

分享常见的几种页面静态化的方法,分享几种页面静态

什么是PHP静态化

PHP静态化的简单理解就是使网站生成页面以静态HTML的形式展现在访客面前,PHP静态化分纯静态化和伪静态化,两者的区别在于PHP生成静态页面的处理机制不同。

为什么要让网页静态化

一、加快页面打开浏览速度,静态页面无需连接数据库打开速度较动态页面有明显提高;
二、有利于搜索引擎优化SEO,Baidu、Google都会优先收录静态页面,不仅被收录的快还收录的全;
三、减轻服务器负担,浏览网页无需调用系统数据库;
四、网站更安全,HTML页面不会受php相关漏洞的影响; 观看一下大一点的网站基本全是静态页面,而且可以减少攻击,防sql注入。

数据库出错时,不影响网站正常访问。
生成html文章虽操作上麻烦些,程序上繁杂些,但为了更利于搜索,为了速度更快些,更安全,这些牺牲还是值得的。

PHP生成静态HTML页面的方法

利用PHP模板生成静态页面

PHP模板实现静态化非常方便,比如安装和使用PHP Smarty实现网站静态化,也可以自己写一套模板解析规则,常见的可以模仿各类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();//输出商品详情页信息
 
}
 
&#63;>
Nach dem Login kopieren

2.使用nosql从内存中读取内容(其实这个已经不算静态化了而是缓存);

以memcache为例:


<!--?php
$gid = $_GET['gid']+0;//商品id
$goods_statis_content = "goods_content_".$gid;//对应键
$expr = 3600*24*10;//有效期,十天
 
$mem = new Memcache; 
$mem--->connect('memcache_host', 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();//输出商品详情页信息
 
}
 
&#63;>
Nach dem Login kopieren

memcached是键值一一对应,key默认最大不能超过128个字节,value默认大小是1M,因此1M大小满足大多数网页大小的存储。
以上就是页面静态化的相关方法,希望对朋友们有所帮助

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/939402.htmlTechArticle分享常见的几种页面静态化的方法,分享几种页面静态 什么是PHP静态化 PHP静态化的简单理解就是使网站生成页面以静态HTML的形式展现在访...
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Ist JSP Front-End oder Back-End? Ist JSP Front-End oder Back-End? Jan 28, 2023 pm 06:23 PM

jsp gehört zum Backend. Der Kern von JSP ist ein Servlet, und Servlet ist eine serverseitige Java-Anwendung, sodass JSP eine Back-End-Technologie ist. JSP wird auf dem Netzwerkserver bereitgestellt und kann auf vom Client gesendete Anforderungen reagieren und basierend auf dem Anforderungsinhalt dynamisch Webseiten in HTML, XML oder anderen Formatformaten generieren und diese dann an den Anforderer zurücksenden. Die JSP-Technologie verwendet Java als Skriptsprache, um Dienste für HTTP-Anforderungen von Benutzern bereitzustellen, und kann komplexe Geschäftsanforderungen zusammen mit anderen Java-Programmen auf dem Server bewältigen.

So integrieren Sie JSP in ein SpringBoot-Projekt So integrieren Sie JSP in ein SpringBoot-Projekt May 12, 2023 pm 07:40 PM

Nachdem das neue Springboot-Projekt erstellt wurde, lautet das Verzeichnis wie folgt: Schritt 1: Fügen Sie den zum Konfigurieren von JSP erforderlichen JAR-Paketcode zur POM-Datei des Projekts hinzu: org.apache.tomcat.embedtomcat-embed-jasperprovided Schritt 2: Erstellen Sie ein neues Verzeichnis webapp unter dem Hauptpfad, erstellen Sie einen neuen Pfad WEB-INF unter webapp, erstellen Sie einen neuen Pfad jsp unter WEB-INF und platzieren Sie die JSP-Datei, die wir verwenden möchten, unter diesem Pfad. Schritt 3: Konfigurieren Sie den Zugriffspfad und den Suffixcode von die JSP-Datei in der Hauptkonfigurationsdatei: spring .mvc.view.prefix=/WEB-INF/jsp/sp

So implementieren Sie die JSP-Paging-Funktion So implementieren Sie die JSP-Paging-Funktion Mar 04, 2024 pm 04:40 PM

Implementierungsschritte: 1. Führen Sie die JSTL-Tag-Bibliothek in die JSP-Seite ein. 3. Paginieren Sie die Daten. 5. Zeigen Sie die Nummer entsprechend der aktuellen Seite an Rufen Sie einfach die entsprechenden Daten aus den Paging-Daten ab und zeigen Sie sie auf der Seite an.

Was ist der Unterschied zwischen JSP und HTML? Was ist der Unterschied zwischen JSP und HTML? Jan 09, 2024 am 10:46 AM

Der Unterschied zwischen JSP und HTML: 1. Betriebsmechanismus; 3. Beziehung zu Java; 9. Dateisuffixe und Identifizierungstools; 10. Community und Support; Detaillierte Einführung: 1. Betriebsmechanismus. HTML ist eine Auszeichnungssprache, die hauptsächlich zum Beschreiben und Definieren des Inhalts von Webseiten verwendet wird. Sie wird vom Browser interpretiert und ausgeführt die Serverseite usw. warten.

So verwenden Sie JSP + MySQL, um Paging-Abfragen auf Webseiten zu implementieren So verwenden Sie JSP + MySQL, um Paging-Abfragen auf Webseiten zu implementieren May 30, 2023 pm 03:58 PM

1. Die Kern-SQL-Anweisung zum Implementieren der Paging-Abfrage (1) Die SQL-Anweisung zum Abfragen der Gesamtzahl der Datensätze in der Datenbank: selectcount(*)from+(table name); (2) Die SQL-Anweisung zum Abfragen der Anzahl der Datensätze jede Abfrage: wobei: 0 der durchsuchte Index ist, 2 die Anzahl der jedes Mal durchsuchten Elemente ist. select*from table name limit0,2; 2. Code-Implementierung* Ich habe diese beiden Klassen im vorherigen Artikel geschrieben, DBconnection-Klasse: Wird zum Abrufen von Datenbankverbindungen verwendet, Author-Objektklasse. Klicken Sie auf den Link, um den Code für diese beiden Klassen anzuzeigen. Klicken Sie auf den Link, um die DBconnection-Klasse und die Author-Objektklasse (1) anzuzeigen. Anmeldeseite: index.jsp. Fügen Sie hier die Benutzerspalte „title“ ein

Welches Format ist JSP? Welches Format ist JSP? Jan 24, 2024 pm 04:01 PM

​JSP ist ein dynamischer Webtechnologiestandard. Sein Dateiformat besteht darin, Java-Programmsegmente (Scriptlet) und JSP-Tags (Tags) in herkömmliche Webseiten-HTML-Dateien (.htm, .html) einzufügen, um JSP-Dateien (*.jsp) zu bilden.

Java-Technologie-Stack für die Webentwicklung: Verstehen Sie Java EE, Servlet, JSP, Spring und andere Technologien, die häufig in der Webentwicklung verwendet werden Java-Technologie-Stack für die Webentwicklung: Verstehen Sie Java EE, Servlet, JSP, Spring und andere Technologien, die häufig in der Webentwicklung verwendet werden Dec 26, 2023 pm 02:29 PM

JavaWeb-Entwicklungstechnologie-Stack: Beherrschen Sie JavaEE, Servlet, JSP, Spring und andere für die Webentwicklung verwendete Technologien. Mit der rasanten Entwicklung des Internets ist die Entwicklung von Webanwendungen im heutigen Bereich der Softwareentwicklung zu einer sehr wichtigen technischen Anforderung geworden. Als weit verbreitete Programmiersprache spielt Java auch im Bereich der Webentwicklung eine wichtige Rolle. Der JavaWeb-Entwicklungstechnologie-Stack umfasst mehrere Technologien wie JavaEE, Servlet, JSP, Spr

Kann JSP durch PHP ersetzt werden? Kann JSP durch PHP ersetzt werden? Mar 21, 2024 am 11:03 AM

Kann JSP durch PHP ersetzt werden? JSP (JavaServerPages) und PHP (HypertextPreprocessor) sind häufig verwendete serverseitige Skriptsprachen zur dynamischen Generierung von Webseiteninhalten. Obwohl sie jeweils ihre eigenen Eigenschaften und Vorteile haben, können sie sich in der praktischen Anwendung gegenseitig vollständig ersetzen? In diesem Artikel werden die Vor- und Nachteile der beiden analysiert und anhand spezifischer Codebeispiele verglichen. Schauen wir uns zunächst die jeweiligen Eigenschaften von JSP und PHP an. JSP basiert auf Java

See all articles