<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        PHP網站提速三大“軟”招

        來源:懂視網 責編:小采 時間:2020-11-27 19:01:47
        文檔

        PHP網站提速三大“軟”招

        PHP網站提速三大軟招:文/李鯤程 隨著網絡的普及,網站已經滲透到了每個行業,但是由于目前專線費用讓很多企業和個人難以承受,所以共享帶寬成為很多網站的首選方案。費用雖然降低了但是一個新的問題很快就出現了,那就是共享帶寬的網速很慢,有時甚至讓人無法忍受。如何能讓自己的
        推薦度:
        導讀PHP網站提速三大軟招:文/李鯤程 隨著網絡的普及,網站已經滲透到了每個行業,但是由于目前專線費用讓很多企業和個人難以承受,所以共享帶寬成為很多網站的首選方案。費用雖然降低了但是一個新的問題很快就出現了,那就是共享帶寬的網速很慢,有時甚至讓人無法忍受。如何能讓自己的

        文/李鯤程

          隨著網絡的普及,網站已經滲透到了每個行業,但是由于目前專線費用讓很多企業和個人難以承受,所以共享帶寬成為很多網站的首選方案。費用雖然降低了但是一個新的問題很快就出現了,那就是共享帶寬的網速很慢,有時甚至讓人無法忍受。如何能讓自己的網站快起來,成為人們關心的問題,筆者結合親身實踐來講講軟辦法的一些實際應用,希望能夠對讀者有所幫助。

          
          筆者采用的是Linux操作系統,Apache+PHP的網站構建方法。


          代碼優化


          通常要求程序員要有好的編程習慣,盡量減少冗余代碼的出現,目前也有好多工具能夠完成這項功能,對于一般的html文件,用于減少冗余的減肥工具很多,而對于PHP程序來說這樣的工具就不太多了,但是Zend Technologies的Zend Optimizer是一款非常好的代碼優化工具,可以免費從Zend Technologies的網站上獲得。Zend Optimizer的使用方法也非常簡單,只要將下載的ZendOptimizer-1[1].0.0-PHP_4.0.4- Linux_glibc21-i386.tar.gz文件解壓縮,將其中的ZendOptimizer.so文件拷貝到/usr/local/Zend/lib目錄下,然后修改php.ini文件,在最后添加以下幾行:


          顯示說明Zend Optimizer工作正常

          zend_optimizer.optimization_level=15

          zend_extension="/usr/local/ Zend/lib/ ZendOptimizer.so"

          設置完成后重啟Apache服務器,編寫一段PHP程序:

          <?

          Phpinfo();

          ?>

          一般來說Zend Optimizer能將系統的效率提升30%~40%,這是用戶最關心的。


          壓縮頁面


          HTTP1.1協議支持頁面壓縮傳送,也就是說服務器把一個頁面壓縮傳送到客戶端,然后在客戶端將頁面解壓縮再顯示給客戶。在服務器端有兩種傳輸方式,一種是頁面事先已經壓縮好了,傳送時只要將壓縮頁面傳送到客戶端就行,這種適用于靜態網頁多的情況,但是對于大多數站點,動態頁面比較多,這種方法不太適合,因為很多傳到客戶端的頁面其實是沒有的,是服務器接到客戶端用戶請求動態產生的,所以就要求每生成一個動態頁面都要在傳到客戶端以前先打包壓縮。從PHP的4.0.4版以后,可以在php.ini文件中增加一行配置“output_handler = ob_gzhandler”,這樣每個動態生成的頁面在傳送到客戶端之前都會進行壓縮,但是根據PHP官方站點的說明,這個參數不能與“zlib.output_compression = on”參數同時使用,因為容易引起PHP工作不正常,另外它只能壓縮PHP程序的動態生成的頁面,對于大量的靜態頁面尤其是圖像文件就不行了。但是mod_gzip模塊為Apahe提供了將靜態頁面在傳給客戶端以前先壓縮的功能,它的壓縮比最大能到10,一般情況下可以到 3,也就是說網站的傳輸速率一下提高了三倍多。要想使用mod_gzip功能首先要下載mod_gzip.c或mod_gzip.so文件,如果下載的是.c文件還要用Apache帶的工具將它轉化為.so文件才能使用,方法是運行下面的命令:

           -i -a mod_gzio.c

          cp mod_foo.so/path/to/apache/libexec/mod_gzip.so

          chmod 755/path/to/apache/libexec/mod_foo.so

          系統會在/path/to/apache/ etc/httpd.conf中自動激活該模塊,如果下載的是.so文件則要將該文件拷貝到相應的目錄下,然后在httpd.conf文件中添加LoadModule gzip_module libexec/ mod_gzip.so,使模塊生效。需要注意兩點,第一,要想使用.so文件,Apache必須包含了mod_so模塊(可以通過httpd -l命令來查詢該模塊是否生效);第二,如果下載的是.so文件,它是與Apache的版本有關的,要注意下載的版本與自己使用的Apache是否一致,如果是.c文件就沒有這個問題。模塊生效后還要對Apache進行相應的配置,需要在httpd.conf文件中加入一些參數:

          mod_gzip_on Yes(模塊是否生效)

          mod_gzip_minimum_file_size 1002(最小壓縮文件大小)

          mod_gzip_maximum_file_size 0(最大壓縮文件大小,0表示沒有限制)

          mod_gzip_maximum_inmem_size 60000(最大可占用內存)

          mod_gzip_item_include file "..gif102SINA>DOUBLE_QUOTATION (以gif結尾的文件要壓縮傳送)

          mod_gzip_item_include file ".txt102SINA>DOUBLE_QUOTATION 

          mod_gzip_item_include file ".html102SINA>DOUBLE_QUOTATION 

          mod_gzip_item_exclude file ".css102SINA>DOUBLE_QUOTATION 

          使用了壓縮模塊后,當用戶訪問站點時會在日志文件中記錄相應的信息,比如“mod_gzip :OK In:file_length Out:gzipfile_length”,表示該頁面傳輸中使用了gzip功能,輸入文件、輸出文件大小都有說明。


          文件緩存


          這種方法通常是針對PHP、PERL等CGI程序而言的,因為這些程序有一個共同的特征就是接到用戶的請求后不是馬上將結果返回給用戶,而是經過解釋器解釋執行后將執行結果返回給客戶,這期間通常都要涉及到數據庫的訪問。這樣就會出現一個問題,當兩個用戶訪問同一個頁面時,系統將分別對兩個請求進行操作,但事實上這兩個操作可能是一模一樣的,這樣無形當中增加了系統的負擔。所以通常的解決辦法是在系統內存中開辟出一段空間,當用戶第一次訪問頁面后將執行結果存放在該內存中,當有用戶再一次訪問該頁面時,系統就將頁面直接從內存中調出而不需要重新解釋執行,這段內存空間就叫緩存。目前流行的緩存管理程序有兩個,一個是FastCGI,另一個是Zend Technologies公司的Zend Cache。FastCGI主要是針對Perl、C、C++等CGI腳本程序設計的,可以有效地利用內存作緩存,來自客戶端的請求都會被傳送到FastCGI應用服務程序,FastCGI處理用戶的請求后將結果返回給用戶。一般的CGI程序這時將結束進程自動退出,但是FastCGI進程繼續保持,這時它在接到新的用戶請求后不必建立新的進程,可以立即處理用戶請求,也就是說CGI程序建立進程順序執行然后退出,而FastCGI程序順序執行并永遠循環。

          Zend Cache的管理界面

          要想使用FastCGI首先要把FastCGI編譯到Apache中,方法非常簡單,這里就不說明了,還要在http.conf文件里作設置:

          AddHandler fastcgi-script .fcg .fcgi .fpl 

          Options ExecCGI Indexes Includes

          這樣FastCGI就可以正常工作了,下面是FastCGI程序員手冊中的一段例子程序:

          #!fcgi-savvy-perl

          use FCGI; # 初始化

          # Initialization code

           = 0;

          # Response loop

          while (FCGI::accept >= 0) { 

           #FastCGI建立循環體

          print "Content-type:text/html "; #程序執行

          print "<head><title>FastCGI Demo Page (perl)</title></head> ";

          print "<h1>FastCGI Demo Page (perl)</h1> ";

          print "This is coming from a FastCGI server. <BR> ";

          print "Running on <EM>publish152.internal.sina.com.cn</EM> to <EM></EM><BR> ";

          ++;

          print "This is connection number ";

          }

          FastCGI對Perl等CGI程序的功能非常強大,但是它對PHP程序確是無能為力的,而且需要在編程時增加內容,也就是說它需要一些人為的因素才能發揮作用。相比之下Zend Technologies公司的Zend Cache針對PHP的緩存功能是很強大的,只要安裝了該軟件,程序員就像編寫其他PHP程序一樣,不需要增加代碼,就可以實現緩存功能,有利于系統升級,十分方便。它是一個付費軟件。它有緩存功能并能通過圖形界面對其進行管理,其中:Cache Control頁面,可以配置Zend Cache,顯示其當前狀態,還能啟動和停止Zend Cache功能;Scripts頁面,Zend Cache的內容,包括每個文件的狀態,還可以根據點擊次數和緩存占有大小選擇文件;Benchmark頁面,可以測試Zend Cache的緩存效果,并以圖形方式給出顯示,它測試的是每秒鐘完成PHP請求的次數。

          它的安裝、驗證方法與Zend Optimizer基本相同,這里就不詳細說明了,感興趣的讀者可以參考用戶手冊,它的強大功能和便利的管理方法確實讓人心動。

          以上是網站提速常見的幾種方法,對于不同的網站需要采用不同的手段,所對應的提速方案也不盡相同,但總體上不外乎是以上提到的三招,讀者可以根據自己的實際情況具體問題具體分析。

          注意:考慮到客戶端軟件的復雜性,因為有些客戶端軟件可能不支持某些特性,比如,mod_gzip對頁面進行壓縮,但是如果客戶端使用的是Netscape就不行,因為它不能把接收到的壓縮頁面解壓縮,導致頁面不能正常顯示。

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        PHP網站提速三大“軟”招

        PHP網站提速三大軟招:文/李鯤程 隨著網絡的普及,網站已經滲透到了每個行業,但是由于目前專線費用讓很多企業和個人難以承受,所以共享帶寬成為很多網站的首選方案。費用雖然降低了但是一個新的問題很快就出現了,那就是共享帶寬的網速很慢,有時甚至讓人無法忍受。如何能讓自己的
        推薦度:
        標簽: 網站 php 腳本
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 1000部禁片黄的免费看| 黄色视屏在线免费播放| 久久久久久a亚洲欧洲AV| 国产精品久久久久久亚洲小说| 一二三四免费观看在线视频中文版| 国产精品麻豆免费版| 亚洲无码一区二区三区| 国产精品成人免费视频网站京东 | 亚洲天堂在线视频| 国产亚洲精彩视频| 亚洲精品99久久久久中文字幕| 高潮毛片无遮挡高清免费视频| 99久久久国产精品免费牛牛四川 | 亚洲麻豆精品国偷自产在线91| 免费又黄又爽又猛大片午夜| 亚洲成AV人在线观看网址| 亚洲综合男人的天堂色婷婷| 91大神免费观看| 亚洲天然素人无码专区| 日本免费一区二区三区最新| 亚洲精品美女在线观看播放| 成人免费黄色网址| 亚洲欧美熟妇综合久久久久| 精品一区二区三区无码免费视频 | 成人免费视频试看120秒| 亚洲国产成人久久精品大牛影视 | jlzzjlzz亚洲jzjzjz| 国产精品偷伦视频免费观看了| 成人片黄网站A毛片免费| 亚洲GV天堂无码男同在线观看| 亚洲国产成人精品91久久久| 特级做A爰片毛片免费看无码| 亚洲黄色高清视频| 日韩在线免费播放| 91视频免费网站| 亚洲av无码一区二区三区天堂古代| 国产成人精品男人免费| 免费国产在线视频| 亚洲精品国产av成拍色拍| 亚洲午夜久久久久久噜噜噜| 可以免费看的卡一卡二|