wiki:MovedToGitHub/WebInterface

Version 3 (modified by wereHamster, 13 years ago) (diff)

--

Web Interface

The Web Interface is a web-based frontend to most Transmission clients (eg. the daemon, GTK client and the Mac client, but not the cli).

Once you have set it up, you can open a web browser and direct it to http://127.0.0.1:9091/transmission/web (replace 127.0.0.1 with the IP where Transmission is running, 9091 is the default port).

To Enable

  • Make sure you have the files installed in the correct location
  • To turn on the Web Interface:

Note: the daemon always has the rpc / Web Interface turned on.

Locations

Mac OS X Defaults

The Mac GUI packages the Web Interface in it's application bundle. So there is no need to manually install or update the bundle.

If you do want to use a custom Web Interface use the environment variable. eg.:

$ export TRANSMISSION_WEB_HOME=/path/to/web/files
$ open -a Transmission

Linux Defaults

The Linux wil look for the Web Interface files in:

  1. $TRANSMISSION_WEB_HOME, if the environment variable is set
  2. $XDG_DATA_HOME/transmission/web, if XDG environment variables are set by the system
  3. $HOME/.local/share/transmission/web
  4. /usr/local/share/transmission/web
  5. /usr/share/transmission/web

Proxy Configuration

Currently the web interface has a hardcoded URL /transmission/web. However for it to work it also needs to have access to /transmission/rpc, so it's best to redirect everything under /transmission/ to Transmission.

Lighttpd

Sample configuration for lighttpd:

server.modules += ( "mod_rewrite", "mod_auth", "mod_proxy" )
url.rewrite-once += ( "^/transmission[/]?$" => "/transmission/web" )

$HTTP["url"] =~ "^/transmission/" {
  auth.backend = "plain"
  auth.backend.plain.userfile = "/var/www/transmission/users"
  auth.require = (
    "" => (
      "method"  => "digest",
      "realm"   => "Transmission Web Interface",
      "require" => "valid-user"
    )
  )

  proxy.server = (
    "" => (
      ( 
        "host" => "127.0.0.1",
        "port" => 9091
      )
    )
  )
}

Apache

Don't know how to handle authentication, so for Apache I can only provide the proxy part:

ProxyPass /transmission http://localhost:9091/transmission