• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 如何讓你的網站提速:Web緩存加速指南(4)

    發表于:2012-12-26來源:IT博客大學習作者:不詳點擊數: 標簽:網站
    如何讓頁面通過緩存達到最快相應? 緩存最好的副本是那些可以長時間保持新鮮的內容;基于校驗雖然有助于加快相應,但是它不得不和源服務器聯系一次去

      如何讓頁面通過緩存達到最快相應?

      緩存最好的副本是那些可以長時間保持新鮮的內容;基于校驗雖然有助于加快相應,但是它不得不和源服務器聯系一次去檢查內容是否夠新,如果緩存服務器上就知道內容是新的,內容就可以直接相應返回了。

      我理解緩存是好的,但是我不得不統計多少人訪問了我的網站!

      如果你必須知道每次頁面訪問的,選擇【一】個頁面上的小元素,或者頁面本身,通過適當的頭信息讓其不可緩存,例如: 可以在每個頁面上部署一個1x1像素的透明圖片。Referer頭信息會有包含這個圖片的每個頁面信息;

      明確一點:這個并不會給你一個關于你用戶精確度很高的統計,而且這對互聯網和你的用戶這都不太好,消耗了額外的帶寬,強迫用戶去訪問無法緩存的內容。了解更多信息,參考訪問統計資料。

      我如何能看到HTTP頭信息的內容?

      很多瀏覽器在頁面屬性或類似界面中可以讓你看到Expires 和Last-Modified信息;如果有的話:你會找到頁面信息的菜單和頁面相關的文件(如圖片),并且包含他們的詳細信息;

      看到完整的頭信息,你可以用telnet手工連接到Web服務器;

      為此:你可能需要用一個字段指定端口(缺省是80),或者鏈接到www.example.com:80 或者 www.example.com 80(注意是空格),更多設置請參考一下telnet客戶端的文檔;

      打開網站鏈接:請求一個查看鏈接,如果你想看到http://www.example.com/foo.html 連接到www.example.com的80端口后,鍵入:

      GET /foo.html HTTP/1.1 [回車]

      GET /foo.html HTTP/1.1 [return]

      Host: www.example.com [回車][回車]

      Host: www.example.com [return][return]

      在[回車]處按鍵盤的回車鍵;在最后,要按2次回車,然后,就會輸出頭信息及完整頁面,如果只想看頭信息,將GET換成HEAD。

      我的頁面是密碼保護的,代理緩存服務器如何處理他們?

      缺省的,網頁被HTTP認證保護的都是私密內容,它們不會被任何共享緩存保留。但是,你可以通過設置Cache-Control: public讓認證頁面可緩存,HTTP 1.1標準兼容的緩存服務器會認出它們可緩存。

      如果你認為這些可緩存的頁面,但是需要每個用戶認證后才能看,可以組合使用Cache-Control: public和no-cache頭信息,高速緩存必須在提供副本之前,將將新客戶的認證信息提交給源服務器。設置就是這樣:

      Cache-Control: public, no-cache

      無論如何:這是減少認證請求的最好方法,例如: 你的圖片是不機密的,將它們部署在另外一個目錄,并對此配置服務器不強制認證。這樣,那些圖片會缺省都緩存。

      我們是否要擔心用戶通過cache訪問我的站點?

      代理服務器上SSL頁面不會被緩存(不推薦被緩存),所以你不必為此擔心。但是,由于緩存保存了非SSL請求和從他們抓取的URL,你要意識到沒有安全保護的網站,可能被不道德的管理員可能搜集用戶隱私,特別是通過URL。

      實際上,位于服務器和客戶端之間的管理員可以搜集這類信息。特別是通過CGI腳本在通過URL傳遞用戶名和密碼的時候會有很大問題;這對泄露用戶名和密碼是一個很大的漏洞;

      如果你初步懂得互聯網的安全機制,你不會對緩存服務器有任何。

      我在尋找一個包含在Web發布系統解決方案,那些是比較有緩存意識的系統?

      這很難說,一般說來系統越復雜越難緩存。最差就是全動態發布并不提供校驗參數;你無發緩存任何內容??梢韵蛳到y提供商的技術人員了解一下,并參考后面的實現說明。

      我的圖片設置了1個月后過期,但是我現在需要現在更新。

      過期時間是繞不過去的,除非緩存(瀏覽器或者代理服務器)空間不足才會刪除副本,緩存副本在過期之間會被一直使用。

      最好的辦法是改變它們的鏈接,這樣,新的副本將會從源服務器上重新下載。記?。阂盟鼈兊捻撁姹旧硪矔痪彺?。因此,使用靜態圖片和類似內容是很容易緩存的,而引用他們的HTML頁面則要保持非常更新;

      如果你希望對指定的緩存服務器重新載入一個副本,你可以強制使用“刷新”(在FireFox中在reload的時候按住shift鍵:就會有前面提到惡Pragma: no-cache頭信息發出)?;蛘吣憧梢宰尵彺娴墓芾韱T從他們的界面中刪除相應內容;

      我運行一個Web托管服務,如何讓我的用戶發布緩存友好的網頁?

      如果你使用apahe,可以考慮允許他們使用.htaccess文件并提供相應的文檔;

      另外一方面: 你也可以考慮在各種虛擬主機上建立各種緩存策略。例如: 你可以設置一個目錄 /cache-1m 專門用于存放訪問1個月的訪問,另外一個 /no-cache目錄則被用提供不可存儲副本的服務。

      無論如何:對于大量用戶訪問還是應該用緩存。對于大網站,這方面的節約很明顯(帶寬和服務器負載);

      我標記了一些網頁是可緩存的,但是瀏覽器仍然每次發送請求給服務。如何強制他們保存副本?

      緩存服務器并不會總保存副本并重用副本;他們只是在特定情況下會不保存并使用副本。所有的緩存服務器都回基于文件的大小,類型(例如:圖片 頁面),或者服務器空間的剩余來確定如何緩存。你的頁面相比更熱門或者更大的文件相比,并不值得緩存。

      所以有些緩存服務器允許管理員根據文件類型確定緩存副本的優先級,允許某些副本被永久緩存并長期有效;

      緩存機制的實現 - Web服務器端配置

      一般說來,應該選擇最新版本的Web服務器程序來部署。不僅因為它們包含更多利于緩存的功能,新版本往往在性能和安全性方面都有很多的改善。

      Apache HTTP服務器

      Apache有些可選的模塊來包含這些頭信息: 包括Expires和Cache-Control。 這些模塊在1.2版本以上都支持;

      這些模塊需要和apache一起編譯;雖然他們已經包含在發布版本中,但缺省并沒有啟用。為了確定相應模塊已經被啟用:找到httpd程序并運行httpd -l 它會列出可用的模塊,我們需要用的模塊是mod_expires和mod_headers

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>