[[PageOutline(2-5,Contents,pullout)]] = Server Side Redirect from a Wiki Page == Description This plugin allows you to place a redirect macro at the start of any wiki page which will cause an server side redirect when the wiki page is viewed. This plugin is compatible (i.e. can be used) with the client side redirect macro TracRedirect, but doesn't depend on it. Because the redirect is caused by the server (using a HTTP redirect request to the browser) it is much faster and less noticeable for the user. The back-link feature of TracRedirect can also be used for server side redirected pages because both generate the same URL attributes. A protection for first order redirect loop (A -> A) and second order redirect loops (A -> B -> A) is implemented, but higher order redirect loops (A -> B -> C -> A, etc.) must be handled by the browser or the user. Firefox 3 handles redirect loops well. To edit a redirecting wiki page access its URL with `?action=edit` appended. To view the page either use `?action=view`, which will print the redirect target (if TracRedirect isn't active, which will redirect the wiki using client side code), or `?redirect=no` which disables redirection of both the ServerSideRedirectPlugin and TracRedirect plugin. Direct after the redirect target is added (or modified) Trac will automatically reload it, as it does with all wiki pages. This plugin will detect this and not redirect but display the wiki page with the redirect target URL printed to provide feedback about the successful change. However, further visits will trigger the redirect. == Bugs/Feature Requests Existing bugs and feature requests for ServerSideRedirectPlugin are [query:status!=closed&component=ServerSideRedirectPlugin&order=priority here]. If you have any issues, create a [/newticket?component=ServerSideRedirectPlugin new ticket]. [[TicketQuery(component=ServerSideRedirectPlugin&group=type,format=progress)]] == Download Download the zipped source from [download:serversideredirectplugin/0.11 here]. == Source You can check out ServerSideRedirectPlugin from [/svn/serversideredirectplugin/0.11 here] using Subversion, or [source:serversideredirectplugin/0.11 browse the source] with Trac. == Installation General instructions on installing Trac plugins can be found on the [TracPlugins#InstallingaTracplugin TracPlugins] page. Enable the plugin in your `conf/trac.ini` file as follows: {{{#!ini [components] tracserversideredirect.* = enabled tracextracturl.* = enabled }}} You may need to restart your Web server. == Examples To use the plugin place the following trac macro at the begin of the wiki page: {{{ [[redirect(OtherWikiPage)]] }}} or: {{{ [[Redirect(OtherWikiPage)]] }}} The macro is normally not executed, but the plugin will scan every wiki page for it and execute the redirect before the wiki page is send to the user. However, a fall-back implementation of the macro is provided which displays the redirect target to the user. This message is also shown directly after the redirect macro was added to the wiki page to give the editing user a feedback over the successful change. Please note that the lower-case version '`redirect`' is compatible with the TracRedirect macro, which is not redefined by this plugin if this macro is also enabled. The upper-case version '`Redirect`' is always provided by this plugin and will be ignored by TracRedirect. In addition to a wiki page any other [TracLinks TracLink] can also be used: {{{ [[redirect(wiki:OtherWikiPage)]] [[redirect(source:/trunk/file.py)]] [[redirect(http://www.example.com/)]] }}} or {{{ [[Redirect(wiki:OtherWikiPage)]] [[Redirect(source:/trunk/file.py)]] [[Redirect(http://www.example.com/)]] }}} == Recent Changes [[ChangeLog(serversideredirectplugin, 3)]] == Author/Contributors '''Author:''' [wiki:martin_s] [[BR]] '''Maintainer:''' [[Maintainer]] [[BR]] '''Contributors:'''