Roxen (web server) explained

Roxen
Roxen
Author:Per Hedbor
Developer:Roxen Internet Software AB
Latest Release Version:6.1.246-release5
Programming Language:Pike
Genre:Web server
License:GPL

Roxen is a free software web server produced by Roxen Internet Software, a company based in Linköping, Sweden and named after the nearby lake Roxen. It is released under the GNU General Public License. Roxen originally appeared as Spinner in the mid-1990s and is written in uLPC or Pike. During its heyday, Roxen was used by large companies such as RealNetworks,[1] Granada Media,[2] Xmission[3] and MCI.[4]

Roxen was in many aspects ahead of its time,[5] featuring a web-based Graphical user interface (GUI) administration interface,[6] loadable modules that could be written in several languages including Pike and later Java, dynamic content generation with a comprehensive caching system, replication systems for multi-headed servers, and an embedded SQL server for data-heavy server operations (as well as broad support for other databases).[7] Roxen was built to meet the needs of content creators.[8]

RXML

RXML (RoXen Macro Language[9]) is a server-side scripting language integrated into Roxen. This language has capabilities of scripting languages like Perl, but the HTML-like syntax makes it more familiar to content creators. Many Roxen sites were developed using the MVC pattern.

Notable tags include:

Roxen modules typically provide their functionality by extending RXML.

All RXML tags contain inline documentation which is used to fill out the online manual that is included on both Roxen's documentation site[17] and with every default server installation.

RXML also provides a variable system; all variables exist within a domain or "scope", e.g. form fields passed to the query are accessible as form.'''fieldname''', user defined variables are stored in the '''var''' scope. Unfortunately, in its attempt to explain the two methods of variable instantiation, the documentation confuses most people.

In most cases, variables are referred to by name, but it is also possible to instantiate (insert the value of) a variable anywhere, in- or outside of tags/markup, using an XML entity-style markup, e.g. '''&page.path;'''. Optionally, one can specify encoding/escaping of the instance, e.g. '''&form.username:mysql;''' to insert a user-submitted value from a form safely into an SQL database or '''&page.path:js;''' to make a variable javascript safe.

See also

Further reading

External links

Notes and References

  1. http://news.nocrew.org/news.html?article=57 NoCrew news [2008-02-03T17:03:05&#93;<!-- Bot generated title -->]
  2. Web site: Home.
  3. Web site: XMission : Support : Publishing . www.xmission.com . dead . https://web.archive.org/web/20050114004237/http://www.xmission.com/help/publishing/migration.html . 2005-01-14.
  4. Web site: Home.
  5. http://linuxgazette.net/issue31/pelletier.html Product Review: The Roxen Challenger Web Server
  6. http://www.unixmen.com/install-roxen-web-server-on-centos-/ Install Roxen web server on centos
  7. http://www.serverwatch.com/stypes/servers/article.php/15871_3465191 Roxen: How Much Is Too Much Functionality?
  8. http://www.serverwatch.com/stypes/servers/article.php/15871_3465191 Roxen: How Much Is Too Much Functionality?
  9. http://docs.roxen.com/roxen/4.5/web_developer_manual/rxml/index.xml Roxen Concepts
  10. http://docs.roxen.com/roxen/4.5/web_developer_manual/if/index.xml If Tags
  11. http://docs.roxen.com/roxen/4.5/web_developer_manual/text/tablify.tag
  12. http://docs.roxen.com/roxen/4.5/web_developer_manual/programming/cache.tag
  13. http://docs.roxen.com/roxen/4.5/web_developer_manual/graphics/gbutton.tag
  14. http://docs.roxen.com/roxen/4.5/web_developer_manual/graphics/gtext.tag
  15. http://docs.roxen.com/roxen/4.5/web_developer_manual/graphics/diagram.tag
  16. http://docs.roxen.com/roxen/4.5/web_developer_manual/output/emit.tag
  17. http://docs.roxen.com Roxen's documentation site