I am currently designing a blog application and am having trouble deciding how to design the blog URLs.
Pages (pages like the about page etc):
http://site.com/about
Post URL can be:
http://site.com/2012/01/15/title-of-post
http://site.com/2012/01/title-of-post
http://site.com/12345/title-of-post
where12345
is a random guid.http://site.com/title-of-post
I don't think the last option is very good due to possible conflicts and confusion if there are 2 posts with the exact title or very similiar titles. It will also conflict with pages where the same title is used.
I am currently considering the second or the third option. StackExchange uses the third option, which I quite like, because the guid is not as distracting as the date in the URL, however, I am not very keen on guids because they don't have any meaning to the user.
Categories:
http://site.com/categories/user-experience
http://site.com/user-experience
Tags:
http://site.com/tags/user-experience-conference-2012
http://site.com/user-experience-conference-2012
The problem I can see with the second approach is that if you have a tag or a category with the same name, you will run into problems.
Pagination: I found this question regarding pagination urls which is very useful. I quite like the recommended approach of using something like:
http://site.com/categories/user-experience/page/1
http://site.com/tags/user-experience-conference-2012/page/2
http://site.com/2012/01/page/2
I think this makes quite a lot of sense. If one were to browse archives, something like http://site.com/2012/01/2
could be mistaken for 2nd of January 2012
Now this is quite nice, but if some one attempts to access http://site.com/2012/01/
what should happen? Should I implement a 301 redirect to http://site.com/2012/01/page/1
? What about http://site.com/2012/01/2
, etc?
I have bolded the URLs that I am leaning towards at the moment. However, User Experience and SEO are the most important issues for me, so is there anything I should change?