欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

php數(shù)據(jù)靜態(tài)顯示 php靜態(tài)頁(yè)面隱藏

php靜態(tài)化頁(yè)面方法,偽靜態(tài)的也可以

PHP偽靜態(tài)寫(xiě)法--其一

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、網(wǎng)站建設(shè)、江達(dá)網(wǎng)絡(luò)推廣、小程序開(kāi)發(fā)、江達(dá)網(wǎng)絡(luò)營(yíng)銷、江達(dá)企業(yè)策劃、江達(dá)品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供江達(dá)建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:chinadenli.net

偽靜態(tài)又名:URL重寫(xiě)

主要是為了SEO而生的。(SEO是什么?這個(gè)不用問(wèn)我吧。呵呵~搞網(wǎng)絡(luò)的不懂SEO那就~~~~)

方法一:

比如這個(gè)網(wǎng)頁(yè)

/soft.php/1,100,8630.html

其實(shí)處理的腳本是soft.php 參數(shù)為1,100,8630

相當(dāng)于soft.php?a=1b=1=100c=8630 只不過(guò)這樣的URL太難記。搜索引擎也不喜歡。

真靜態(tài)只是完全生成了HTML。

客戶端訪問(wèn)的時(shí)候直接輸出。不用腳本解釋。在流量非常大的時(shí)候(比如每天有上百萬(wàn)的訪問(wèn)量的時(shí)候)會(huì)起到很好的效果。也就是說(shuō)服務(wù)器端實(shí)實(shí)在在的存在這個(gè)HTML頁(yè)面。

當(dāng)然在你網(wǎng)站的流量沒(méi)有那么大的時(shí)候。URL重寫(xiě)是最好的方法(個(gè)人觀點(diǎn),大流量的時(shí)候可以考慮負(fù)載均衡了。同樣沒(méi)有關(guān)系)

附URL重寫(xiě)的方法有很多種,APACHE,IISREWRITE。甚至PHP腳本都可以直接處理。比如上例中就是PHP腳本直接處理(該方法好處是大流量的時(shí)候直接減輕WEB伺服器的壓力。PS:同樣也是個(gè)人觀點(diǎn):

================================================

下面以程序?yàn)槔v一下PHP偽靜態(tài)的程序?qū)崿F(xiàn)方法,其實(shí)這方法我之前已經(jīng)有在其它論壇社區(qū)發(fā)過(guò)

程序?yàn)槔?/p>

/soft.php/1,100,8630.html

CODE:

//利用server變量 取得PATH_INFO信息 該例中為 /1,100,8630.html 也就是執(zhí)行腳本名后面的部分

if(@$path_info =$_SERVER["PATH_INFO"]){

//正則匹配一下參數(shù)

if(preg_match("/\/(\d+),(\d+),(\d+)\.html/si",$path_info,$arr_path)){

$gid =intval($arr_path[1]); //取得值 1

$sid =intval($arr_path[2]); //取得值100

$softid =intval($arr_path[3]); //取得值8630

}else die("Path:Error!");

//相當(dāng)于soft.php?gid=1sid=100softid=8630

//就是這么簡(jiǎn)單了。~)

方法二:

一 打開(kāi) Apache 的配置文件 httpd.conf 。

二 將#LoadModule rewrite_module modules/mod_rewrite前面的#去掉

三 在 httpd.conf中添加:

IfModule mod_rewrite.c

RewriteEngine On

#RewriteCond %{ENV:SCRIPT_URL} (?:index|dispbbs)[-0-9]+.html

RewriteRule ^(.*?(?:index|dispbbs))-([-0-9]+).html 1.php?__is_apache_rewrite=1__rewrite_arg=2

/IfModule

四 要實(shí)現(xiàn)asp帖子URL到php帖子的映射,在 第三步的IfModule mod_rewrite.c和/IfModule之間添加:

RewriteMap tolowercase int:tolower

RewriteCond %{QUERY_STRING} (?:boardid|page|id|replyid|star|skin)=d+ [NC]

RewriteRule ^(.*(?:index|dispbbs)).asp 1.php?{tolowercase:%{QUERY_STRING}}__is_apache_rewrite=1

五 保存httpd.conf并重啟Apache

方法三:

?php

/*

功能:PHP偽靜態(tài)化頁(yè)面的實(shí)現(xiàn)

具體用法:

例如鏈接為:test.php/year/2006/action/_add.html

mod_rewrite();

$yearn=$_GET["year"];//結(jié)果為'2006'

$action=$_GET["action"];//結(jié)果為'_add'

*/

function mod_rewrite(){

global $_GET;

$nav=$_SERVER["REQUEST_URI"];

$script_name=$_SERVER["SCRIPT_NAME"];

$nav=substr(ereg_replace("^$script_name","",urldecode($nav)),1);

$nav=preg_replace("/^.ht(m){1}(l){0,1}$/","",$nav);//這句是去掉尾部的.html或.htm

$vars = explode("/",$nav);

for($i=0;$iCount($vars);$i+=2){

$_GET["$vars[$i]"]=$vars[$i+1];

}

return $_GET;

}

mod_rewrite();

$yearn=$_GET["year"];//結(jié)果為'2006'

$action=$_GET["action"];//結(jié)果為'_add'

echo $yearn;

echo $action;

?

?php

/*

功能:PHP偽靜態(tài)化頁(yè)面的實(shí)現(xiàn)

具體用法:

例如鏈接為:test.php/year/2006/action/_add.html

mod_rewrite();

$yearn=$_GET["year"];//結(jié)果為'2006'

$action=$_GET["action"];//結(jié)果為'_add'

*/

function mod_rewrite(){

global $_GET;

$nav=$_SERVER["REQUEST_URI"];

$script_name=$_SERVER["SCRIPT_NAME"];

$nav=substr(ereg_replace("^$script_name","",urldecode($nav)),1);

$nav=preg_replace("/^.ht(m){1}(l){0,1}$/","",$nav);//這句是去掉尾部的.html或.htm

$vars = explode("/",$nav);

for($i=0;$iCount($vars);$i+=2){

$_GET["$vars[$i]"]=$vars[$i+1];

}

return $_GET;

}

mod_rewrite();

$yearn=$_GET["year"];//結(jié)果為'2006'

$action=$_GET["action"];//結(jié)果為'_add'

echo $yearn;

echo $action;

?

如何用PHP輸出靜態(tài)頁(yè)面

用PHP輸出靜態(tài)頁(yè)面有2種方法

一種是利用模板技術(shù),另一種是用ob系列函數(shù)。兩種方法,看起來(lái)都差不多,但是實(shí)際上,卻是不同的。

第一種:利用模板

目前PHP的模板可以說(shuō)是很多了,有功能強(qiáng)大的smarty,還有簡(jiǎn)單易用的smart?template等。

它們每一種模板,都有一個(gè)獲取輸出內(nèi)容的函數(shù)。

我們生成靜態(tài)頁(yè)面的方法,就是利用了這個(gè)函數(shù)。

用這個(gè)方法的優(yōu)點(diǎn)是,代碼比較清晰,可讀性好。

這里我用smarty做例子,說(shuō)明如何生成靜態(tài)頁(yè)

?php

require('smarty/Smarty.class.php');

$t?=?new?Smarty;

$t-assign("title","Hello?World!");

$content?=?$t-fetch("templates/index.htm");

//這里的?fetch()?就是獲取輸出內(nèi)容的函數(shù),現(xiàn)在$content變量里面,就是要顯示的內(nèi)容了

$fp?=?fopen("archives/2005/05/19/0001.html",?"w");

fwrite($fp,?$content);

fclose($fp);

?

第二種方法:利用ob系列的函數(shù)

這里用到的函數(shù)主要是?ob_start(),?ob_end_flush(),?ob_get_content(),

其中ob_start()是打開(kāi)瀏覽器緩沖區(qū)的意思,

打開(kāi)緩沖后,所有來(lái)自PHP程序的非文件頭信息均不會(huì)發(fā)送,

而是保存在內(nèi)部緩沖區(qū),直到你使用了ob_end_flush().

而這里最重要的一個(gè)函數(shù),就是ob_get_contents(),

這個(gè)函數(shù)的作用是獲取緩沖區(qū)的內(nèi)容,相當(dāng)于上面的那個(gè)fetch(),

道理一樣的。代碼:

?php

ob_start();

echo?"Hello?World!";

$content?=?ob_get_contents();//取得php頁(yè)面輸出的全部?jī)?nèi)容

$fp?=?fopen("0001.html",?"w");

fwrite($fp,?$content);

fclose($fp);

?

php靜態(tài)頁(yè)面怎么做?詳細(xì)點(diǎn)

確實(shí)有點(diǎn)籠統(tǒng)。不過(guò)我可以跟樓主大概說(shuō)一下思路 一般的生成靜態(tài)頁(yè)面的方法就先制作一個(gè)靜態(tài)模板,在里面需要?jiǎng)討B(tài)改變的東西用特殊的代碼標(biāo)記,然后再用PHP將標(biāo)記替換后生成文件進(jìn)行保存。 比如:body div{:This is the content:}/div /body 這個(gè)里面的{:This is the content:}就是一個(gè)特殊的標(biāo)記。我們?cè)O(shè)這段代碼在a.html文件中,我們用PHP將他讀入,?php $b='這里是內(nèi)容,可以從數(shù)據(jù)庫(kù)讀取,或者從其他途徑獲得'; $fp=fopen('a.html','r'); $content=fread($fp,filesize('a.html')); fclose($fp); $content=str_replace('{:This is the content:}',$b,$content);(額。。這個(gè)函數(shù)參數(shù)順序記不太清楚了) $fp1=fopen('b.html','w'); fwrite($fp,$content); fclose($fp); ? 這樣我們就得到了b.html這個(gè)文件,就是一個(gè)靜態(tài)的文件,里面的代碼如下: body div這里是內(nèi)容,可以從數(shù)據(jù)庫(kù)讀取,或者從其他途徑獲得/div /body 這樣說(shuō),樓主明白了吧? 其實(shí)一般的網(wǎng)站是不需要生成這樣的靜態(tài)頁(yè)面的,流量低的網(wǎng)站命中率也就低了,而且更新起來(lái)非常麻煩。這就需要用到一些其他的技術(shù)的。比如SSI啊,比如只保存數(shù)據(jù)庫(kù)查詢結(jié)果啊。什么的

網(wǎng)頁(yè)標(biāo)題:php數(shù)據(jù)靜態(tài)顯示 php靜態(tài)頁(yè)面隱藏
轉(zhuǎn)載源于:http://chinadenli.net/article24/hijdje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷推廣域名注冊(cè)動(dòng)態(tài)網(wǎng)站定制網(wǎng)站營(yíng)銷型網(wǎng)站建設(shè)App設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)