Difference between revisions of "Webserver"

From AMule Project FAQ
Redirect page
Jump to: navigation, search
(not finished. just saving to make sure i don't loose what ive laredy done ;))
 
(44 intermediate revisions by 18 users not shown)
Line 1: Line 1:
== How to setup a [[aMuleWeb|Webserver]] with [[aMule]] 2.0.0rc1 and later ==
+
#REDIRECT [[aMuleWeb]]
 
+
=== Previous notes ===
+
 
+
If you installed [[aMule]] via [http://www.debian.org deb] or [http://www.rpm.org RPM] package, the [[aMuleWeb|webserver]] source is not included.
+
Since some few files are needed from the sources to set-up [[aMuleWeb]], please visit http://www.amule.org and download the tar.gz package for your [[aMule]] version.
+
 
+
=== Setting up [[aMuleWeb]] ===
+
 
+
*[http://www.gnu.org/software/tar/tar.html Untar] the sources and copy ''src/aMule.tmpl'' and ''src/webserver/'' into your ''~/.aMule/'' directory. The following (run from the sources directory), should do so:
+
:''cp -r src/aMule.tmpl src/webserver/ ~/.aMule/''
+
 
+
*Shutdown [[aMule]] if it is still running.
+
 
+
*Edit your ''~/.eMule'' file:
+
*Locate the ''[ExternalConnect]'' section and change:
+
**''AcceptExternalConnections=1'' <-- To enable [[aMule]] listening for [[External Connections]].
+
**''ECUseTCPPort=1'' <-- To use the [http://www.faqs.org/faqs/internet/tcp-ip/resource-list TCP] port. Very important since [http://www.unix.org Unix] sockets are disabled.
+
 
+
*Restart [[aMule]]
+
 
+
4) Go to your Preferences -> Remote Connection (in [[aMule]]):
+
*Enable your [[aMuleWeb|webserver]]
+
*Also setup your passwords here for [External Connections]] and [[aMuleWeb|webserver]] login
+
*When you change your ports for [[aMuleWeb|webserver]] and [[External Connections]] here make sure to restart [[aMule]]!!
+
 
+
5) After you are done, save your settings, go to console and type
+
*''amuleweb''
+
*Type in your password. This will startup your [[aMule]] [[aMuleWeb|webserver]]. If you changed your [[External Connections]] port to someting else start [[aMuleWeb|amuleweb]] with:
+
*''amuleweb -p '''new_port'''''
+
at the end it should look something like this:
+
<code>
+
Web Server: Started
+
 
+
amuleweb$
+
 
+
WSThread: Thread started
+
 
+
WSThread: created service
+
 
+
WSThread: created socket listening on :4711
+
</code>
+
 
+
6) To make sure it is working use your favorite browser to browse:
+
*''http://localhost:4711''
+
 
+
'''NOTE:''' This (port 4711) is the default port of your [[aMuleWeb]]. If you connect to 4712 this will not work since it is the [[External Connections]] port, so connecting here will result in error messages by [[aMule]].
+
 
+
'''NOTE:''' Since [[aMule]] 2.0.0-rc6, [[aMuleWeb]] supports ''--quiet'' switch (or ''-q'' also) which renders allows    [[aMuleWeb]] to be easily run on the background.<br>
+
However, on previous [[aMule]] releases, although [[aMuleWeb]] works well, it's actually quite tricky to run it in the background because it's continuously asking for user commands and showing the prompt. The obvious way to avoid this would be running amuleweb with the output redirected to ''/dev/null'', but this hogs the CPU due to the constant writing, so a better approach is to use the program [http://directory.fsf.org/GNU/screen.html screen], which is a terminal emulator. In order to run [[aMuleWeb]] inside a virtual terminal, the following command should be executed: ''screen -d -m -S amulewebsession amuleweb -p 7000 -pw password'' (assuming that [[aMule]] is listening for [[External Connections]] on port ''7000'' and the password is ''password''). Then, [[aMuleWeb]] will start listening for HTTP connections, but will show the prompt and all messages in this virtual terminal. It's possible to switch to this terminal using the command ''screen -r amulewebsession'', please refer to [http://directory.fsf.org/GNU/screen.html screen] documentation for info about session switching, internal commands, etc.
+
 
+
For Problems or Questions just report on http://forum.amule.org forum or join [[IRC]] channel [irc://irc.freenode.net/amule #amule] at [irc://irc.freenode.net irc.freenode.net]
+
 
+
'''[[User:Stefanero|Stefanero]]'''
+
 
+
== How to setup a [[aMuleWeb|Webserver]] with [[aMule]] 1.2.8 or earlier ==
+
 
+
The following is based on the original instruction by BigBob. They guide you on how to modify [[aMule]]'s configuration files to set [[aMuleWeb]] correctly. There is "Preferences"->"Remote Controls" now, but anyway, information is never a bad idea.
+
 
+
*Shutdown [[aMule]] to avoid overwritting config files while shutting down.
+
 
+
*Copy from [[aMule]]'s sources (version 1.2.4 or later) the directory ''src/webserver/'' into your ''~/.aMule/webserver/'' directory.
+
 
+
*Copy from [[aMule]]'s sources (version 1.2.4 or later) the file ''src/aMule.tmpl'' into your ''~/.aMule/aMule.tmpl'' directory.
+
 
+
*Open a terminal and type (you might have to install ''md5sum''):
+
 
+
:''echo -n "'''THEPASWORDYOUWANT'''" | md5sum | cut -d " " -f 1''
+
This reply with an [[MD5]] hash. Something like: 324f85f6095f9e5fe25b6c85af44b445
+
 
+
*Edit your ''~/.eMule'' file, locate the ''[ExternalConnect]'' section in it and change this fields:
+
 
+
:''AcceptExternalConnections=1'' <- To enable [[aMule]] to listen for external connections.
+
:''ECUseTCPPort=0'' <- 0/1 (disable/enable) the use of a [http://www.faqs.org/faqs/internet/tcp-ip/resource-list TCP] port (if disabled use a [http://www.unix.org Unix] socket in your ''~/.aMule/muleconn'') for External Connections.
+
:''ECPort=4712'' <- Put here the port on which you want [[aMule]] to listen for External Connections.
+
:''ECPassword=39e5049d0614baf21906500e2261d500'' <- Put here the password for External Connections<nowiki>'</nowiki> authentications you generated before in terminal (something like 324f85f6095f9e5fe25b6c85af44b445).
+
 
+
*Edit your ''~/.eMule'' file, locate the ''[WebServer]'' section in it and change fields:
+
 
+
:''Password=324f85f6095f9e5fe25b6c85af44b445'' <- Put here the password generated in term for the admin (full privileged users).
+
:''PasswordLow=1db5a746266e941b3ef7dd3586863ca7'' <- Put here the password generated in term for "low users" (low privileged users).
+
:''Port=10000'' <- Put the port you want [[aMuleWeb]] to listen on.
+
:''Enabled=1'' <- This option has been deprecated and is completly ignored now. Enabling External Connections will enable any application it connects to it, including [[aMuleWeb]].
+
:''UseGzip=1'' <- Enable compression on communication.
+
:''PageRefreshTime=120'' <- Put here the web page refresh time (in seconds).
+
:''UseLowRightsUser=0'' <- 0/1 (disabled/enabled) "low user" access.
+
 
+
*Restart [[aMule]].
+
 
+
*Once [[aMule]] is running, start the web interface ([[aMuleWeb]]).
+
 
+
*Now point your web browser to http://localhost:10000 (or whatever your host and ports are) and authenticate yourself with "Password" (for full privileged user) or "PasswordLow" (for low privileged user, if enabled).
+
 
+
*That's all :)
+
 
+
'''NOTE:'' In latest [[aMule]] 1.2.x releases, the option ''WebTemplateFile'' allows to override the file template to use (thanks to [[User:Stefanero|Stefanero]]. You can set this option in the ''[eMule]]'' section. Example:
+
 
+
''WebTemplateFile=eMule.tmpl''
+
 
+
''Shakraw''
+

Latest revision as of 00:16, 13 November 2005