知乎專欄 | 多維度架構 | 微信號 netkiller-ebook | QQ群:128659835 請註明“讀者” |
一個大型網站,對於URL規劃我認為非常重要,這也是為什麼我把它單列出來的原因。
當前網站上使用的URL虛虛實實已經不單單是劃分目錄空間功能,它與程序配合使用,實現複雜的邏輯功能。在應用程序開發框架組成中佔有重要的地位。
注意 | |
---|---|
無論什麼檔案系統,每個目錄下容納的子目錄和檔案是有限制的,並且內容過多會影響檔案索引速度,所以合理地劃分目錄空間很重要 |
下面是URL實例僅供參考,稍後我會詳細解釋他們這樣設計的目的是什麼和實現方法。
http://sina.allyes.com/main/adfclick?db=sina&bid=120294,154641,159584&cid=0,0,0&sid=146767&advid=2618&camid=19961&show=ignore&url=http://web.topxue.com/gj/bdxm/
http://news.sina.com.cn/c/2008-05-22/172315597145.shtml
http://example.org/bbs/thread-1003872-1-1.html
http://example.org/news/2008/05/22/1004862.shtml
http://example.org/uk/en/action,ProductDetailShow_productId,51
http://example.com/forums/viewforum/59/
http://example.com/forums/viewthread/80165/
http://trac.example.com/cgi-bin/trac.cgi/ticket/1286
目錄設計,以下為真實目錄,你在URL看到其它路徑都是不存在的。它們是用於rewrite或pathinfo的。
images
framework
model
view
controller
language
config
logs
例子1
http://example.com/guestbook/view/59/
相當於
http://example.com/<controller>/<action>/<id>/
class Guestbook extend Controller{ public function index(){ } public function view($id =1){ } public function add(){} public function remove($id){ } }
一般採用pathinfo技術實現上述功能