頁面靜態化 偽靜態

2021-06-26 22:57:26 字數 1664 閱讀 3146

1:先提出乙個問題:

假設我的網域名稱為:www.servername.com,能否實現www.servername.com/aaa/bbb.html實際上是訪問www.servername.com/ccc/ddd.php?

問題分析:

首先,www.servername.com實際上已經確定了ip和埠號,如:127.0.0.1:80,如此來說,假設在本地,我們有乙個webserver已經在監聽80埠,那麼也就是說,上述的url,www.servername.com/aaa/bbb.html,能夠把請求傳送給我們本機的webserver。

然後,本次請求,請求webserver下的/aaa/bbb.html。我們要求,實際做返回/ccc/ddd.html的內容,這個選擇檔案的工作,當然是我們的webserver來做的。

如此,上述問題,實際上,就是:如何讓webserver例如,apache,能夠按照一定的規則,將接收到的請求重寫???

2:偽靜態是什麼:

【個人理解】偽靜態就是,乙個形如:www.servername.com/aaa/bbb.html這樣的請求,我們讓www.servername.com/ccc/ddd.php來做業務處理。這樣,我們就實現了乙個html檔案來做php檔案的「功能」。如此,就是偽靜態。

3:我們要做什麼:

將www.servername.com/aaa/news-sports-id100.html這樣的請求,由www.servername.com/ccc/news.php?type=sports&id=100來處理。

4:偽靜態實現(本地實現):

4.1:配置網域名稱和ip的對應關係:

開啟c:\windows\system32\drivers\etc\hosts檔案,加入127.0.0.1   www.localhost.com。重啟apache。

在瀏覽器鍵入,www.localhost.com如果,能列出www下的檔案目錄,說明正確。

4.2:開啟apache的rewrite模組,並啟用httpd-vhost.conf配置。

開啟d:\wamp\apache24\conf\httpd.conf。loadmodule rewrite_module modules/mod_rewrite.so,include conf/extra/httpd-vhosts.conf去掉這兩行前面的#號。重啟apache。

這時,瀏覽器鍵入www.localhost.com,會說你沒有許可權。

4.3:配置虛擬主機

documentroot 你指定的資料夾

servername 自定義網域名稱

#配置節點

allow from all  #允許所有人訪問該檔案目錄

deny from all   #禁止所有人訪問該檔案目錄

errordocument404  #可以配置404介面 

errordocument403 #可以配置403介面

options indexes #可以顯示目錄結構

options none #不顯示目錄結構

#重點來了,開啟rewrite引擎

rewriteengine on

#開啟rewriterule

rewriterule (這裡可以使用正規表示式定義自己的規則)

PHP 頁面靜態化 純靜態化 偽靜態化

概念 php靜態化分為 純靜態化 和 偽靜態化 純靜態化又分為 區域性靜態化 和 完全靜態化 純靜態化 是把php生成的動態頁面儲存成靜態的html檔案,使用者訪問該靜態頁面,而不是使用者每一次訪問都重新生成一張相同的網頁,優點就是減小伺服器開銷,區域性靜態化 是生成的靜態檔案中,有區域性的資料還是...

PHP 頁面靜態化 純靜態化 偽靜態化

概念 php靜態化分為 純靜態化 和 偽靜態化 純靜態化又分為 區域性靜態化 和 完全靜態化 純靜態化 是把php生成的動態頁面儲存成靜態的html檔案,使用者訪問該靜態頁面,而不是使用者每一次訪問都重新生成一張相同的網頁,優點就是減小伺服器開銷,區域性靜態化 是生成的靜態檔案中,有區域性的資料還是...

頁面靜態化3 偽靜態技術

偽靜態 減少伺服器對資料響應的負荷 載入不用調動資料庫 方便優化引擎 但同時伴隨著缺點 生成的真靜態檔案多,伺服器對html檔案的響應負擔也比較重 空間占用比較大。如果乙個系統使用真靜態進行頁面靜態化,需要生成海量的靜態頁面,我們可以考慮使用偽靜態來處理 目前業內最喜歡用的乙個技術是 偽靜態技術 o...