偽靜態不是優化效率的方案,它指的是url優化的一種方式。
取決於是否存在查詢引數(
querystring)
動態的url:script.php?param=value&key=value
靜態的url(pathinfo):script.php/param/value/key/value.html
靜態化url的目的,是為了seo(搜尋引擎優化),還能為了簡化url,美化url。
典型的url優化,偽靜態的方式如下:
(1)利用web伺服器提供的重寫url功能(例如apache mod_rewrite)
(2)利用php自身對url進行分析處理。(pathinfo,就是php處理的)(推薦)
一、url路由-php自身處理url優化
以tp框架為例:url是tp(幾乎所有的主流框架)提供的,一種自定義分析url,並解析到指定指定的方法。
例如:有個url:
使用pathinfo:
自定義:
如果需要實現自定義的url,來請求動作,則需要 url路由功能,即
在某個模組的配置檔案中,配置如下的路由資訊:
pathinfo-php自身處理url路由,和pathinfo的實現:獲取使用者請求的特定字串,進行分析。
php提供了常見的url格式字串解析功能:parse_url();
二、隱藏入口檔案指令碼----使用 web伺服器(apache httpd)完成
apache的url重寫(mod_rewrite)功能可以完成將乙個url,對映到另乙個url上。
步驟:開啟apachel的配置檔案httpd.conf。
開啟apache的rewrite模組
#loadmodule rewrite_module modules/mod_rewrite.so 將#去掉
然後apache服務重啟:apache httpd restart
[可選] 開啟專案目錄的.htaccess許可權
然後使用.htaccess配置apache重寫規則,紅色框框內的。
rewritecond 是重寫條件,cond即condition
解釋如下:如果請求的資源既不是乙個真實存在的目錄,也不是真實存在的檔案,則完成下面的重寫規則。
其他的相關指令:
重寫不僅僅使用在url隱藏index.php功能:例如:防止倒鏈
其它**想在它的**裡去爬取你的**的資源,你不想讓他們獲取,那麼就可以利用這個技術。
偽靜態的實現方法
偽靜態不是優化效率的方案,它指的是url優化的一種方式。取決於是否存在查詢引數 querystring 動態的url script.php?param value key value 靜態的url pathinfo script.php param value key value.html 靜態化u...
關於偽靜態的實現方法
php怎麼實現呢,具體方法如下 apache伺服器 利用apache的mod rewrite模組 1.檢測apache是否支援 mod rewrite 開啟您的apache安裝目錄 apache conf 下的 httpd.conf 檔案,通過ctrl f查詢到 loadmodule rewrite...
偽靜態的實現
所謂的偽靜態頁面,就是指的url重寫,在asp.net中實現非常簡單 首先你要在你的專案裡引用兩個dll actionlessform.dll urlrewriter.dll 真正實現重寫的是 urlrewriter.dll 但是如果你要實現分頁,那麼必須使用這個actionlessform dll...