Arg - my mistake!
Okay - so, to answer the original question. The current system is set
up to interpret the slash as separating the URLSegment and the action
(URLSegment)/(Action).
So if you visit
http://www.silverstripe.com/blog/rss - is that the
"blog/rss" page, or the rss action within the blog? You could resolve
it, either by looking to see if an rss action is available on the
blog, or to see if a "blog/rss" page exists, but you leave open the
risk of accidentally breaking things by creating a page that clobbers
an action, or vice versa. Hackable, but not elegant.
After you've dealt with that, you're going to need to edit a lot of
different bits of code that is built on the assumption that internal
links are of the form '^[A-Za-z0-9_\-]+/$'.
* Edit an existing link in the CMS
* Recognise internal links for broken link detection in
HTMLEditorField
* Update internal links when page URLSegments are edited
* Generation of $Link?
* URL Uniqueness checking?
* Other stuff that I haven't considered?
Once you've got that basic level of functionality established, you to
update the default URL generation:
* It will need to take the parent URL segment into account.
* If the pages are reorganised the URL segment will need to be
updated.
* If the URLSegment of a container pages is changed (including if it
was reorganised) then all of the descendant pages will have to have
their URLSegments changed.
* Since there will now be actions that can trigger the editing of a
bunch of URLSegments, you will need to figure out an intuitive UI for
letting people confirm that they do want the URLs to be changed as a
result of their reorganisation.
So... not for the faint of heart. I would expect weeks of development
and a lot of hairy bugs.
Is it really that important to you?