From 1b4b2c7b8b2f2df8f114617d2e875eaf5c839ce0 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 1 Sep 2015 08:55:26 +0000 Subject: completely revamp URL structure to shorten permalinks This allows common /m/ links to be used without a prefix, saving 2 precious bytes for permalinks and raw messages. Old URLs continue to redirect. --- Documentation/design_www.txt | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) (limited to 'Documentation') diff --git a/Documentation/design_www.txt b/Documentation/design_www.txt index a11c3896..b73a7987 100644 --- a/Documentation/design_www.txt +++ b/Documentation/design_www.txt @@ -2,29 +2,28 @@ URL naming ---------- ### Unstable endpoints -/$LISTNAME/?r=$GIT_COMMIT -> HTML only -/$LISTNAME/new.atom -> Atom feed +/$LISTNAME/?r=$GIT_COMMIT -> HTML only +/$LISTNAME/new.atom -> Atom feed #### Optional, relies on Search::Xapian -/$LISTNAME/t/$MESSAGE_ID/ -> HTML content of thread -/$LISTNAME/t/$MESSAGE_ID/atom -> Atom feed for thread -/$LISTNAME/t/$MESSAGE_ID/mbox.gz -> gzipped mbox of thread +/$LISTNAME/$MESSAGE_ID/t/ -> HTML content of thread +/$LISTNAME/$MESSAGE_ID/t.atom -> Atom feed for thread +/$LISTNAME/$MESSAGE_ID/t.mbox.gz -> gzipped mbox of thread ### Stable endpoints -/$LISTNAME/m/$MESSAGE_ID/ -> HTML content (short quotes) -/$LISTNAME/m/$MESSAGE_ID -> 301 to above -/$LISTNAME/m/$MESSAGE_ID/raw -> raw mbox -/$LISTNAME/f/$MESSAGE_ID/ -> HTML content (full quotes) -/$LISTNAME/f/$MESSAGE_ID -> 301 to above -/$LISTNAME/f/$MESSAGE_ID/raw [1] -> 301 to ../m/$MESSAGE_ID/raw - -### Legacy endpoints (may be ambiguous given Message-IDs with similar suffixes) -/$LISTNAME/m/$MESSAGE_ID.html -> 301 to $MESSAGE_ID/ -/$LISTNAME/m/$MESSAGE_ID.txt -> 301 to $MESSAGE_ID/raw -/$LISTNAME/f/$MESSAGE_ID.html -> 301 to $MESSAGE_ID/ -/$LISTNAME/f/$MESSAGE_ID.txt [1] -> 301 to ../m/$MESSAGE_ID/raw - -/$LISTNAME/atom.xml [2] -> identical to /$LISTNAME/new.atom +/$LISTNAME/$MESSAGE_ID/ -> HTML content (short quotes) +/$LISTNAME/$MESSAGE_ID -> 301 to /$LISTNAME/$MESSAGE_ID +/$LISTNAME/$MESSAGE_ID/raw -> raw mbox +/$LISTNAME/$MESSAGE_ID/f/ -> HTML content (full quotes) + +### Legacy endpoints (may be ambiguous given Message-IDs with similar suffies) +/$LISTNAME/m/$MESSAGE_ID/ -> 301 to /$LISTNAME/$MESSAGE_ID/ +/$LISTNAME/m/$MESSAGE_ID.html -> 301 to /$LISTNAME/$MESSAGE_ID/ +/$LISTNAME/m/$MESSAGE_ID.txt -> 301 to /$LISTNAME/$MESSAGE_ID/raw +/$LISTNAME/f/$MESSAGE_ID.html -> 301 to /$LISTNAME/$MESSAGE_ID/f/ +/$LISTNAME/f/$MESSAGE_ID.txt [1] -> 301 to /$LISTNAME/$MESSAGE_ID/raw + +/$LISTNAME/atom.xml [2] -> identical to /$LISTNAME/new.atom FIXME: we must refactor/cleanup/add tests for most of our CGI before adding more endpoints and features. -- cgit v1.2.3-24-ge0c7