Server
General settings
You can choose to start the server automatically when starting MyTunesRSS. This also means that the main window will automatically minimized on Windows and hidden on Mac OS X.
You can download ZIP archives with multiple tracks in the web interface. MyTunesRSS creates and streams the archive on-the-fly. You can also optionally have MyTunesRSS create a temporary file first. The benefit is that the browser knows the total file size when downloading and can display a correct progress bar. The files are also kept for some time in a cache, so you can also use download managers to resume broken downloads. The drawback is the initial delay after clicking the download button while MyTunesRSS creates the temporary file.
You can make your server available to other servers on your local network. You also have to enter a name for your server in this case. Each MyTunesRSS server on the same network can now discover your server. If someone visits one of those other servers he can get a list of discovered servers and switch to your server for example. He has to login into your server of course. Your server will discover other servers which are made available regardless of the option, i.e. being available itself.
Advanced settings
Usually MyTunesRSS runs in the root context of the server. This means you can reach it at "http://host:port/". You can also set any other context name if you like, so using "music" as the context name, you would have to type "http://host:port/music" to reach your server.
The maximum number of threads is the maximum number of worker threads which handle incoming requests. So this limits the number of concurrent requests that can be handled.
The AJP port enables an AJP connector which is necessary when using mod_jk in an Apache in front of MyTunesRSS. This setup should be faster than mod_proxy while mod_proxy is usually easier to configure. With mod_jk you should be able to have one Apache and multiple MyTunesRSS servers with a load balancing mechanism. This has not been tested yet and it can only work with an external database system (Postgres or MySql) where all MyTunesRSS servers connect to the same database. One of the MyTunesRSS instances must act as a master which has data source configurations and database update schedules. The users and all other settings have to be the same on both instances. If you create such a setup successfully or if you would like to have such a setup and need further assistance, please contact support@codewave.de with any questions.
You also need to configure your Apache server. First visit http://tomcat.apache.org/connectors-doc for download and more information of the mod_jk Apache module. The configuration in Apache is rather simple. The path names may vary depending on your system layout. This is from an Apache2 configuration on an Ubuntu Linux box with the context path set to "/mytunesrss" and the AJP port 8009.
httpd.conf:
LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so JkWorkersFile /etc/apache2/workers.properties JkShmFile /var/log/apache2/mod_jk.shm JkLogFile /var/log/apache2/mod_jk.log JkLogLevel info JkLogStampFormat "[%a %b %d %H:%M:%S %Y] " JkMount /mytunesrss mytunesrss JkMount /mytunesrss/* mytunesrss
workers.properties:
worker.list=mytunesrss worker.mytunesrss.type=ajp13 worker.mytunesrss.host=localhost worker.mytunesrss.port=8009
HTTP settings
Your server needs a port to listen for incoming request. You can use any free port of your system. If you cannot start the server you should try another port. On Linux and Mac OS X system you need to be the root user to use ports below 1024.
You can access MyTunesRSS directly using the above port since it starts a web server. You can also use Apache mod_proxy for having an Apache web server as a proxy for MyTunesRSS. Use this feature if you have an Apache server running and you want to access MyTunesRSS via this Apache instead of directly communicating with the MyTunesRSS server. This could for example be due to the fact that you want to run Apache and do not want to open another port in your firewall for external access. In the proxy settings you specify the external address of your proxy server which is forwarded to the MyTunesRSS server. The links on the MyTunesRSS pages are now generated using the proxy host, port and protocal settings instead of the HTTP connector endpoint.
For the apache configuration please you have to enable the mod_proxy module and then configure the mappings. Please ensure that the contexts are the same for the Apache and the MyTunesRSS server.
LoadModule proxy_module {path-to-modules}/mod_proxy.so
AddModule mod_proxy.c
The following mappings example maps the URL http://apache-proxy/mytunesrss to http://localhost:8080/mytunesrss. So for this example you have to set the context path of MyTunesRSS to "mytunesrss".
ProxyPass /mytunesrss http://localhost:8080/mytunesrss ProxyPassReverse /mytunesrss http://localhost:8080/mytunesrss
The default context of MyTunesRSS is the root context, so a configuration for this would be the following.
ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/
HTTPS settings
You can configure an HTTPS connector for MyTunesRSS as well if security is important to you. In this case you have to configure an HTTPS port. MyTunesRSS uses a default self-signed server certificate which you browser will of course complain about being invalid. HTTPS will work nevertheless if you accept the certificate. You can specify you own Java keystore with key alias and store password if you want to create your own server certificate. Please read the Java keytool documentation for more information. The basic call for generating a self-signed certificate is the following line.
keytool -genkey -alias <alias> -keystore <keystore-file>
The proxy settings are used just like the proxy settings in the HTTP configuration in case the SSL connector is called.
Additional web application contexts
Adding other contexts lets you run other web application which can consist of a complete Java servlet or JSP based web application or just simple HTML pages. This option was added so you can host web applications using the remote API in the same server to work around restrictions of the "same origin" policy for AJAX requests. Since the JSONP parameter is supported now as well, you should not need the additional contexts options anymore. The name of the additional context is the context name, i.e. a name "/demo" would create a context reachable via "http://localhost:8080/demo" for example. Please mind the leading slash! The docbase is simply the absolute path of the document root in your file system. You can add as many contexts as you like.