Changes for page Standard URL Format

Last modified by Simon Urli on 2020/05/18

From version < 90.1 >
edited by Thomas Mortagne
on 2018/08/21
To version < 91.1 >
edited by Simon Urli
on 2019/05/03
< >
Change comment: There is no comment for this version



Page properties
... ... @@ -1,1 +1,1 @@
1 -XWiki.ThomasMortagne
1 +XWiki.surli
... ... @@ -209,6 +209,22 @@
209 209  
210 210  If set, force the attachment to be downloaded instead of being opened in the browser (it sets the ##Content-Disposition## header to ##attachment## instead of ##inline##).
211 211  
212 +== Action: ##downloadrev## ==
213 +
214 +The additional URL paths for the ##downloadrev## action is ##<space1>/.../<spaceN>/<page>/<attachment>?<query string>##.
215 +
216 +Example:
217 +
218 +* ##http:~/~/<server>/xwiki/bin/downloadrev/Space1/Space2/WebHome/image.png?rev=1.2##: Views the revision ##1.2## of ##image.png## attachment located in the ##Space1.Space2.WebHome## page.
219 +
220 +=== Parameter: ##rev## ===
221 +
222 +The version to get, e.g. ##1.2## in ##http:~/~/<server>/xwiki/bin/downloadrev/Space1/Space2/WebHome/image.png?rev=1.2##
223 +
224 +=== Parameter: ##force-download## ===
225 +
226 +If set, force the attachment to be downloaded instead of being opened in the browser (it sets the ##Content-Disposition## header to ##attachment## instead of ##inline##).
227 +
212 212  == Action: ##create## ==
213 213  
214 214  The additional URL paths for the create action is ##<space1>/.../<spaceN>/<page>?<query string>##.

The general format of XWiki URLs is ://///, where:

  • : by default it's http. It's possible to use https. It's generally deduced from the URL used by the client but it's possible to control it using the wiki descriptor
  • : the XWiki instance address and port, e.g. localhost:8080, In domain-mode the server also contains the subwiki name. See Accessing a wiki. In path-based mode, the server is the address of the main wiki. Since 10.7 it's possible to customize the port to use in the the wiki descriptor
  • : the name under which the XWiki web application is deployed in your Servlet Container, e.g. xwiki. See Short URLs if you wish to deploy XWiki as ROOT.
  • : the type of URL depending on the XWiki subsystem accessed. The following types are supported:
    • bin: points to a dynamic resource. Examples: an Entity to display (wiki, page, space, attachment, object, property, etc), a dynamic skin resource (image, css, js), a dynamic template resource (image, js, css, icon, etc) and more. By dynamic we mean that some computation needs to happen to compute the resource (for example some Velocity needs to be evaluated).
    • wiki: this is similar to bin but specifying the subwiki to access, in path-based mode (See Accessing a wiki).
    • rest: points to a REST Resource
    • skins: points to a static filesystem skin resource (image, js, css, etc), i.e. a resource located inside a skin directory on the filesystem.
    • resources: points to a static template resource (image, js, css, etc) on the filesystem.
    • xmlrpc: points to the now deprecated XMLRPC API (see XML-RPC Integration for more details).
    • webdav: points to a WebDAV resource (see Web DAV for more details).
  • : the path completely depends on the used. See below for more details.

If you're interested in configuring the XWiki URLs, check the URL Architecture page.

Type: bin

XWiki 7.2: Added support for Nested Spaces

There are various bin URLs. The generic format of bin URLs is bin//. The full list of is defined in the Strut Configuration file (located in WEB-INF/struts-config).

Here are some well-known actions:

  • skin: Dynamic Skin resource, e.g. http:///xwiki/bin/skin/resources/uicomponents/search/searchSuggest.css
  • jsx: Javascript Skin Extension URL, e.g. http:///xwiki/bin/jsx/AnnotationCode/Settings?language=en
  • ssx: StyleSheet Skin Extension URL, e.g. http:///xwiki/bin/ssx/AnnotationCode/Style?language=en
  • webjars: URL when accessing some resources located in a WebJar, e.g. http:///xwiki/bin/webjars/resources/path?value=requirejs%2F2.1.15%2Frequire.min.js
  • download: URL to access an attachment from a wiki page, e.g. http:///xwiki/bin/download/XWiki/JohnDoe/john.png?width=30&height=30&keepAspectRatio=true
  • view: Display Entity content (wiki, page, space, attachment, object, property, etc) with the skin applied, e.g. http:///xwiki/bin/view/Sandbox/WebHome
  • edit: Edits wiki content (page, object, property, etc), e.g. http:///xwiki/bin/edit/Sandbox/WebHome
  • get: Accessing Entity content (wiki, page, space, attachment, object, property, etc) without any skin applied, e.g. http:///xwiki/bin/get/Main/WebHome?xpage=xpart&vm=commentsinline.vm. The get action should be used to render the content of the page and nothing else (mainly used for code pages). This action is similar to the view action, but without the UI and with "text/plain" mime type set by default for the response.
  • export: Exports wiki pages to various formats (PDF, HTML, etc). See Exports.
  • viewrev: This action is the same as the view action but allowing to address a given revision of the document asked.
  • create: Provides the UI for creating new documents, e.g. http:///xwiki/bin/create/Space/NewDocument

Action: view

The additional URL paths for the view action is /...//? or /.../?


  • http:///xwiki/bin/view/Sandbox/WebHome: Views the Sandbox.WebHome page.
  • http:///xwiki/bin/view/Sandbox: Views the Sandbox.WebHome page.
  • http:///xwiki/bin/view/Space1/Space2: Views the Space1.Space2.WebHome page (if the Space2 page doesn't exist. If it exists then it views the Space1.Space2 page).
  • http:///xwiki/bin/view/Space1/Space2/: Force to always views the Space1.Space2.WebHome page (even if the Space2 page exists in the Space1 space. Note the / at the end).
  • http:///xwiki/bin/view/Space1/Space2?spaceRedirect=false: Force to always view the Space1.Space2 terminal page (even if the Space1.Space2.WebHome page exists and even if the Space1.Space2 page may not exist).

Here are some of the supported query string parameters.

Parameter: xpage

  • plain: this value indicates that only the content of the page is printed (no UI). With a document that's not using the XWiki Syntax 1.0 you can control the output syntax using outputSyntax and outputSyntaxVersion. You can also pass other parameters to allow fine-grained control:
    • raw=1: Returns the page source as is without any formatting but XML-escaped
    • raw=2: Returns the page source as is without any formatting (without any escaping)
    • htmlHeaderAndFooter=true: Since 6.3RC1 Display the HTML headers (,,, etc...) and footers (

Get Connected