2010-06-10 157 views
3

所以,這可能是一個蠕蟲的罐頭。但我很好奇你的做法是什麼?URL命名約定

例如,假設您的網站包含了以下需求(很基本的):

  1. 着陸頁
  2. 一個事件(靜態)
  3. 爲A的地方上市信息頁面該事件(動態)
  4. 的信息頁每個地方

雖這麼說,你將如何設計你的網址嗎?

通常情況下,我會做類似如下:

www.domain.com/ - 着陸頁[也可以通過www.domain.com/home訪問] www.domain.com/event - 事件信息頁面 www.domain.com/places - 所有地方的列表 www.domain.com/places/{id} - 地點信息頁面

現在,這是一個問題。從語法上講,我有一個掛鉤,指的是在url中給定的地方是複數。難道不應該更有意義去與此:

www.domain.com/place/{id} 而不是 www.domain.com/places/{id}

在一些框架,你有一個默認遵循的約定(例如,ASP.NET MVC)。是的,您可以定義自定義路線以將place/{/}路由到PlacesController。但是,我只是試圖在討論中保持這種抽象。

有了這樣說,讓我們看看例如你的網站的另一個頁面上,你有一個鏈接,當點擊時,會打開填充位置信息的模式彈出。你在哪裏放置這些信息?

我們可以像這樣的東西去:

www.domain.com/ajax/places/{id} OR www.domain.com/places/{id}和發球基於請求頭(也就是說,如果請求JSON,返回JSON}

最後,對於搜索引擎優化的原因,通常我用一個給定的資源關聯的塞所以,像這樣的:。

www.domain.com/ ajax/places/{id} /倫敦

倫敦只在那裏添加裝飾鏈接的搜索引擎優化的原因。這是聲音嗎?

我問所有這些問題,因爲這些是我一直在使用一段時間的做法,我只是想看看其他開發商都在做,或者如果我不當接近的東西。

謝謝!

+0

對不起,我的意思是蛞蝓會是這樣: www.domain.com/places/{id}/london 無需在AJAX請求蛞蝓.... – StephenPAdams 2010-06-10 16:37:43

回答

0

我喜歡在頁面頂部使用麪包屑導航的URL,所以在向左移動時每個層次都應該更一般。

我反對SEO slu because,因爲它們具有誤導性,刺激性和不必要性。

用戶應該知道他們何時具有持續的URL以及何時具有動態結果。 '?'提供了一個很好的指示。這就是說,這聽起來雖然你的地名是動態的,但是對於返回的數據仍然存在持久性,對嗎?如果用戶修剪了www.domain.com/place/的URL,他們會很好,他們能夠以引導的方式瀏覽地點。

我會說這個地方,因爲當你登陸一個頁面時,它是一個特定的地方,除此之外,大多數用戶都不會注意到這一點。我記得聽說「簡潔是機智的靈魂」,所以我認爲Polonious會同意這條配合去掉's'。