冷氣界的達人,專業維修冷氣,老經驗真功夫,冷氣不冷 灌冷媒,壓縮機不良,免費到府估價 | 合法優良搬家公司,搬家零糾紛,提供您平價又專業的搬家服務 絕對讓您安心、滿意喔 |
關於產生靜態頁面速度的問題 |
房東:可愛鐘 發表時間:2007-01-30 |
關於產生靜態頁面速度的問題樓主keaizhong(可愛鐘)(溫州的PHPER)(19801010)2006-02-17 11:37:55 在 Web 開發 / PHP 提問 我利用ob_get_contents()來取得動態頁面產生的頁面內容輸出一個靜態頁面的,然後轉向靜態頁面訪問,這個轉向只有在要重新產生靜態的時候發生。。 所以要產生靜態頁面都是訪問一下動態頁面,這樣子的速度是很慢的,尤其是批量產生靜態頁面的時候。 不曉得大家是用什麼方法透過ob_get_contents()產生靜態頁面快一點的? 能用程式直接取得動態產生的內容嗎?我想這樣了肯定會比訪問一下網站快很多。 下面是我靜態輸出轉向的代碼,請大家給我一些見意。多謝了。 ======================================== //設定靜態輸出檔案名時才執行 if( $filename ) { $content = $ofun->make_static(ob_get_contents());//替換動態連接為靜態 $outfile = "../".$dir.$filename; if( ! file_exists( dirname($outfile) ) ) {//檔案夾不存在 $ofun->makedir( dirname($outfile) , 0777 );//建立檔案夾 } $ofun->putfile( $outfile , $content );//靜態輸出 //echo $content;//檢視輸出靜態檔案內容(測試用) header( "location: ".$outfile );//轉向到靜態 exit; ob_flush(); } 問題點數︰200、回複次數︰56 Top 1 樓kangqin(小康)Top 2 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-17 14:24:10 得分 0 REWRITE這個我知道。。現下我營運在IIS下面,暫時不那麼做。。 只能是一個一個的生成靜態頁存放在伺服器上。 主要是想了解一下用ob_get_contents()有沒有快速的方法,你們是不是和我一樣? Top 3 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-18 10:17:58 得分 0 怎么人氣這么差? 還是我問的問題不對? Top 4 樓litcat(裡子)回複於 2006-02-18 10:38:09 得分 3php版貌似人氣較差 我是菜鳥,幫頂 Top 5 樓kangqin(小康)Top 6 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-18 15:18:34 得分 0 小康,沒有辦法呀。我領導這么要求的,一定要生成 靜態,說是有助於搜索引擎收錄啦。 所以我不得不這么做了。 另外IIS怎么設定REWRITE? Top 7 樓aiiiq(外星人木有小JJ)回複於 2006-02-18 15:49:56 得分 3/usr/local/php/bin/php /home/wwwweb/abc.php > /home/wwwweb/abc.html 可以用exec()函數寫程式 Top 8 樓aiiiq(外星人木有小JJ)回複於 2006-02-18 15:52:12 得分 0 如果透過web訪問一定會慢的 http://www.abc.com/makepage.php?p=abc.php Top 9 樓syre(神仙)Top 10 樓adleyliu(留印)回複於 2006-02-20 08:24:07 得分 3生成速度慢,不過用戶訪問HTML速度快,也值得﹗ Top 11 樓raid79(山鷹)Top 12 樓lzkd(浪子快刀)回複於 2006-02-20 08:39:43 得分 15可愛鐘同學 你設定為添加一條新聞後就自動生成一些相關的靜態頁(如首頁),不就可以了? 或者,所有新聞添加成功後(或者添加了5條後),就自動靜態生成首頁一次. 有些時候,把工作給別人完成一部分了哈.什麼事都由程式員來完成,好像不太合理.大家也要合作的嘛 Top 13 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-20 09:05:00 得分 0 那就是說我的方法沒有錯嘍。 我以為我你們還會有其它快速的方法怒。 其實我慢也就慢在批量生成的時候。一條記錄生成並不會慢。。 在前台是看不出來的,主要是後台控制重新生成的時候啦。 不過奇怪的是我領導給我看了一個ASP的靜態網站,後台生成速度是飛快呀,不像我用的這么慢。。所以奇怪向大家請教下嘍。 Top 14 樓uuq(杜牧)回複於 2006-02-20 12:03:52 得分 15$ofun->putfile( $outfile , $content );//靜態輸出 //echo $content;//檢視輸出靜態檔案內容(測試用) 直接輸出$content不行嗎 //header( "location: ".$outfile );//轉向到靜態 批量生成時候,我不知道你用什麼模板 一般用模板替換後輸出,直接用一個循環就可以了 速度也很快的。幾百頁幾秒可以完成了 Top 15 樓lzkd(浪子快刀)回複於 2006-02-21 08:50:12 得分 0 可愛鐘用的大概是phplib模版吧?在以前的貼子裡提起過... 可能是模版的問題,以前我也用phplib,現下在改smartTemplate,等比較出個結果來的時候,我說一下就是了 Top 16 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-21 11:00:50 得分 0 $ofun->putfile( $outfile , $content );//靜態輸出 我的這個函數就是直接輸出靜態檔案的。。 我用的是PHPLIB的。輸出的時候我是循環訪問每個動態頁面,我這些動態頁訪問一次就會更新一次靜態頁面的。 smartTemplate有緩存的,會快很多吧。 這個不是模版的問題吧。。和模式有關係。 比如我現下要生成首頁--那就訪問一下我的域名︰http://www.abc.com 這樣子肯定是慢的。。能改種模式直接在伺服器上轉存成靜態就會快很多。大家的招嗎? Top 17 樓lucklrj(123)回複於 2006-02-21 12:48:54 得分 3把php輸出寫到靜態的html上,然後再瀏覽它。 Top 18 樓lzkd(浪子快刀)回複於 2006-02-22 09:02:43 得分 15可愛鐘...你是要訪問後才能夠生成靜態? 訪問你的http://www.abc.com應該是一個生成靜態的php檔案,在這個檔案的最後,你使用了類似header轉到生成的靜態頁,是這樣吧? 我是這樣處理的.在數據庫裡就有相對應這條資料的靜態頁面的位址,批量生成(主要是用於整體網站改版)的時候,直接就重新寫出新的靜態頁面.這樣可能要快一點. Top 19 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-22 10:01:34 得分 0 快刀說的就是。我就是這樣子做的,訪問動態PHP頁,就能生成對應的靜態頁面,然後轉向。因為我裡面有些是動態頁面的,並不是純靜態的站點。。 我是根據動態位址有規律的生成靜態頁面。所以知道動態位址透過換算就可以知道靜態位址了。 問題是我用訪問模式來生成靜態的,我覺得這模式慢了。 基於我現下的靜態模式,是不是可以找到另外一種靜態生成快速的方法? 我主要是想和大家討論這個。 快刀說的從數據庫讀出對應資料,這個在生成靜態的時候肯定要這樣子做的。 Top 20 樓mynamesucks(迅雷不及掩耳盜鈴之勢如破竹)回複於 2006-02-22 17:51:56 得分 3linux下寫個crontab定時營運一下你的php程式生成靜態頁 windows下可以用計畫任務達到同樣的效果 如果有人手,也可以安排一個人在更新某些頁面後執行一下啊 Top 21 樓lzkd(浪子快刀)回複於 2006-02-23 09:44:25 得分 15可愛鐘同學... 個人意見是,你可以把訪問動態PHP頁面的這一個工作省掉呀.如果我理解的不錯,你訪問100個頁面,才生成100個靜態,那自然比不上不用訪問頁面,直接生成100個靜態來的那麼快了.至於說有的頁面不是靜態的,有的靜態頁面不需要一起生成,這個在程式裡過濾一下就是了. 具體頁面的位址,直接在數據庫裡儲存,也不要進行什麼換算了.我就是這么處理的. 個人看法,呵.... Top 22 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-23 11:06:08 得分 0 哈哈。對啊。就是怎么不用訪問頁面來產生靜態? 我現下用ob_get_contents()必須要訪問呀。難道我用的方法不對? 靜態位址和動態位址透過換算這個我想應該沒有問題,這個靈活性好一些。這個只有在產生靜態的時候才進行的。 Top 23 樓xuzuning(嘮叨)Top 24 樓sinolge()Top 25 樓xuzuning(嘮叨)Top 26 樓sinolge()Top 27 樓uuq(杜牧)回複於 2006-02-23 15:22:23 得分 5我有一個挺好的想法 就是你每個頁面用一個javascript 再次訪問伺服器,生成下一次將要生成的內容 如果有了就不生成了 Top 28 樓lzkd(浪子快刀)回複於 2006-02-23 16:29:42 得分 15哈哈。對啊。就是怎么不用訪問頁面來產生靜態? 我現下用ob_get_contents()必須要訪問呀。難道我用的方法不對? ***** 可愛鐘同學... 不用訪問當然可以產生靜態.一個不算是例子的例子 表裡有100條記錄(你的數據一般總是放在表裡,那些1萬年不變,如企業簡介那個不算),現下你需要生成靜態頁面. $sql = "select ....."; $query=mysql_query($sql); while(...) { //在這裡就是一條一條的內容了 //在這裡讀一條記錄生成一條靜態 } 就是這樣了.當然,這裡面要考慮到一次不能生成太多條,還是一般不是每次都生成庫裡所有的數據,不過,這都是小節了. 用ob_get_contents()應該不會影響速度. 個人看法...呵... Top 29 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-23 17:33:44 得分 0 嘮叨,謝謝你的提醒,你說的這裡確實有一個多餘的時間損耗。但我一定要用LOCATION來轉向一下,因為有時候會訪問到動態頁面,轉過去之後位址欄中就變成靜態的html頁面了,要不然還是動態,領導這樣子要求也沒有辦法。也就是說現下我的靜態和動態頁面是互通滴,靜態中有動態,動態訪問不是處理需要都會直接轉向到靜態去了。 uuq(杜牧) 你的想法我懂了,多謝了。有可能的話我會付注實踐的,這個一定還要加個更新時間的設定吧。嘿嘿。其實有點兒像STAMTTEMPLATE的緩存更新了,我說的沒錯吧。 lzkd(浪子快刀) 我批量產生靜態的時候就是你這樣子的。我的問題就是嘮叨提到的,可能是多損耗了一半時間,所以顯得特別慢。 哦,對了,還有一個伺服器回應的時間和產生靜態的時間也有關係了,網路不好的話不是不能產生靜態了?怎么問題越來越多呀。。 Top 30 樓lzkd(浪子快刀)回複於 2006-02-24 09:02:55 得分 5暈..不明白...如果按這么來,怎么會有損耗呢?為什麼非要"LOCATION來轉向一下,"....除非..你根本就是為了產生靜態頁而產生靜態頁,並不是真的需要產生靜態..大概是你的頭家聽說靜態可以增加搜索排名...才...... 不然的話,怎么解釋...."也就是說現下我的靜態和動態頁面是互通滴,靜態中有動態"...天..可愛鐘你也太可憐了... Top 31 樓xuzuning(嘮叨)Top 32 樓lzkd(浪子快刀)回複於 2006-02-24 11:26:34 得分 0 蜘蛛也擔心陷入你的陷阱的 老大的這句話,有點意思..呵 可愛鐘,這種頭家就不要了,離開吧^_* Top 33 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-24 13:52:36 得分 0 呵呵。不是頭家,是主管啦。 他不懂PHP的。要求這么做我也沒有辦法。都是混口飯吃的。 嘮叨,那生成的靜態頁面就會在那裡了。訪問的時候還是在靜態之間相互跳轉的,只有少部分是動態跳到靜態。 Top 34 樓lzkd(浪子快刀)回複於 2006-02-25 08:42:35 得分 0 想不明白.可愛鐘同學是怎么安排的......繼續關注 Top 35 樓mrshelly(Shelly)回複於 2006-02-25 08:56:14 得分 3如果樓主用模板技術。就會知道如何操作了。 Top 36 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-25 09:50:51 得分 0 lzkd(浪子快刀) 我的站點以靜態出現的。在一些處理控制的時候就用到動態,從這些動態頁面轉到靜態的時候,其中連接的也是動態頁面,只是系統中發現此動態 頁面有靜態的時候就會更新靜態並自動轉向。 mrshelly(Shelly)我用的是PHPLIB模版處理網站的。 Top 37 樓boystones(獨孤一劍)Top 38 樓lzkd(浪子快刀)回複於 2006-02-25 13:42:09 得分 0 奇怪並且複雜的功能.....可愛鐘同學,你把網站貼出來,讓我們也看看,學習一下吧,也了解一下,為什麼你的主管需要這么奇怪的東西 又及,如果這樣的話,我相信,需要使用這么動態轉向到靜態的頁面應該不是很多,又何必在乎生成速度呢? 又又及,剛才試了一下smartTemplate的靜態生成,發現比phplib快許多.要不?可愛鐘同學,你也改一下模版用? Top 39 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-25 14:35:08 得分 0 東西都已經開發完了,還換?你要我命呀,哈哈。。 網站暫時還沒有掛上去啦。。現下只能在我本機子上用。 是的呀。我只是覺得慢,問一下大家是不是有更好的方法。。 我的動態頁面確實不是很多,從動態轉向靜態的就更少了。基本上客戶是在靜態頁面訪問。 Top 40 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-25 14:38:27 得分 0 類似於www.made-in-china.com 不過我覺得上面這個網站是利用REWRITE技術的,我主管不相信我說的,只有聽他的了,做到我現下這樣子了。。 Top 41 樓lzkd(浪子快刀)回複於 2006-02-27 09:02:47 得分 0 hehe有點意思..掛上去後,通知一下大家哈...也看看這么複雜的東西是怎么個樣子 我現下在把公司整個網站用smartTemplate換架構重寫..累死了....不過,覺得這樣挺有意思,所以..也建議你換 Top 42 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-02-27 09:13:08 得分 0 哈哈。我也想換呀。這等於重新寫一次代碼似的。 時間上不允許呀。。 現下得到一個消息。 我的領導說,搜索引擎搜索頁面是從上到下,從左到右的,都被搞迷糊了。。。 大家跟我說一下,到底蜘蛛是怎么工作的?? 在我看來,最重要的的關鍵字就在html中的title和content裡 Top 43 樓blue2004(簡單就是快樂)Top 44 樓loswing(修)回複於 2006-02-27 16:26:05 得分 0 偶一直在用smarty這個東西不錯。呵呵。 --- 至今還不會用phplib,慚愧ing。 Top 45 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-03-01 08:24:52 得分 0 莫有辦法了,他是領導聽他的唄,現下做得我一點兒信心都沒有了。 這個項目本來我了上手就覺得沒有什麼大的作為的。但是現下做到一半又不能走。 沒有辦法呀,要不就對自己慘忍點,否則就只有對別人慘忍了。 phplib 很簡單的,不用一個晚上你就可以搞定。我會PHPLIB還不會SMARTY呢。都一樣,大家喜歡的東西不一樣,再就是看你先接觸哪個了。 Top 46 樓lzkd(浪子快刀)回複於 2006-03-01 09:05:18 得分 5沒有辦法呀,要不就對自己慘忍點,否則就只有對別人慘忍了。 ****** 有點意思.那,個人建議,對別人殘忍好過對自己殘忍... 要不---可愛鐘同學就跳吧. Top 47 樓xuzuning(嘮叨)Top 48 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-03-01 11:02:35 得分 0 有點意思.那,個人建議,對別人殘忍好過對自己殘忍... 這個我贊成了。。哈哈。。等待中。。。溫州這邊做PHP少呀。 有好機會 當然要對別人慘忍了。哈哈。。。 我們的討論好像偏離了主題了。我就當兩三個問題來好了。到時候我會加分的。多謝各位了。 我們提到這兩個模版,再順便問個問題了。 置頂的neatTempate,好像集成了PHPLIB和smartTemplate的諸多優點,大家覺得如何? 一直在用PHPLIB,用到現下發現有些不順手了,正想尋找一個小巧的模版,看好smartTemplate的時候neatTemplate出現了,個人發現挺不錯的,大家給評評。 Top 49 樓xuzuning(嘮叨)Top 50 樓zairwolft(君子蘭)回複於 2006-03-01 11:48:42 得分 3又學一招。 Top 51 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-03-01 14:28:48 得分 0 呵呵。我也學到一招。。 老大,自己做的模版當然是好了,用著習慣不說,以後擴展也方便,再加上每個人對自己的東西有著與別人的無法比擬的感情在裡面。哈哈。可以的話我也想自己做一個。 老大的模版引擎能不能共享一下? Top 52 樓feyge(菲戈@http://feyge.spaces.msn.com/)回複於 2006-03-01 14:31:46 得分 0 sign Top 53 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-03-01 14:32:37 得分 0 裡面有個下載位址的。不曉得怎么回事,沒有幾個人對那個模版發表意見。 http://nt.neatcn.com/NEATTemplate_1_0_0.rar Top 54 樓dadwxf(三個夏天)Top 55 樓lzkd(浪子快刀)回複於 2006-03-01 16:43:09 得分 3通常搜索引擎搜索頁面是︰ 1、檢查meta標記 2、分析並跟蹤頁面中的url 當發現是動態url時多半就不跟蹤了,因為動態頁面的內容會變不宜分類。 當然如果你已經付費了,動態連接也是會被收錄的 ----------- 相信可愛鐘同學不會罵我(嘻嘻^_*),跟在後面想問一下嘮叨老大..所謂"動態url時多半就不跟蹤了"這裡面的動態url是指如index.php還是如index.php?path=root 也就是說,一個單獨的,php檔案後面沒有加上如?path=root這樣的參數,蛛蛛會不會跟蹤? Top 56 樓keaizhong(可愛鐘)(溫州的PHPER)(19801010)回複於 2006-03-01 16:49:53 得分 0 根據老大說的,動態的應該也包括index.php了。在變的不好分類收錄,這也是在變的。 |
|
廣利不動產-板橋在地生根最實在--新板特區指名度最高、值得您信賴的好房仲 完整房訊,房屋、店面熱門精選物件,廣利不動產 優質仲介,房屋租賃、買賣資訊透明,交易真安心! 廣利不動產-新板特區指名度最高、值得您信賴的好房仲 您的托付,廣利用心為您服務 |
姓名: | |||
佈告內容: | |||
其他選項: | |||
|