You are here: Home » Topic » Proxying mt-daapd via apache

Proxying mt-daapd via apache

This topic contains 2 replies, has 2 voices, and was last updated by  w1ll14m 8 years, 7 months ago.

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #2407

    w1ll14m
    Participant

    Ok, i’d like to contribute one of my tricks, i don’t know if someone else uses this allready but i’d like to share it anyway πŸ™‚

    Ok, so you have mt-daapd running nicely in an internal network.
    So now you can use Firefly Client internaly (java client by Vincent Cariven) and externaly (if you route firefly port to wan ip).

    As daap/RSP are both http based, this allows you to do some nice tricks:
    Like Proxying daap/rsp trough apache2, which allows you to bypass any proxy which allows port 80 (always enabled because of http transfers :))

    Also Fireplay works nicely with this.

    So what you need:
    Apache2 (with proxy, rewrite support and preferably name based vhosts)

    An example apache vhost:



    ServerName daap.domain.com
    DocumentRoot "/path/to/wwwroot/" # contains the fireplay (rename fireplay.html to index.html)
    RewriteEngine On
    RewriteRule ^/rsp/(.*)$ http://127.0.0.1:8080/rsp/$1 [P]
    RewriteRule ^/login(.*)$ http://127.0.0.1:8080/login$1 [P]
    RewriteRule ^/server-status(.*)$ http://127.0.0.1:8080/server-status$1 [P]
    RewriteRule ^/databases/(.*)$ http://127.0.0.1:8080/databases/$1 [P]

    Options FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all


    This allows you to proxy DAAP/RSP trough apache2, so you can use Fireplay or Firefly client from almost any computer.

    Since they they are proxied from apache2 they can also pass proxy’s πŸ™‚
    You can even host a php page that communicates via songs3.db and create your own player.

    I created a simple php daap browser, which enables me to stream video from daap using batch script and mplayer!

    Well, if there’s any interest in my php browser… it’s a modified version of ph_pexplorer and it’s a little crappy coded (haven’t had much time to get it perfect), but i’m willing to share it.

    –edit–
    Note that i use port 8080 for mt-daapd on localhost.

    #16915

    Anonymous

    Hi!

    I have been trying to get this to work, but no luck. Apache won’t run again until I re-comment the vhosts option in httpd.conf. The vhosts seem to be set up right, the first one points to my original document root and the second one is the one you posted, except the port is 80 instead of 8080.

    I have scoured the internet for the answer to this question (it is something I am really interested in doing), as well as seen other people ask the question, but have never seen much coverage of it. Anything you can give me might help.

    Thanks

    P.S. I also have a post about accessing Firefly externally, to do which you said I need to route the Firefly port to the WAN IP. It is currently routed to the server’s static internal IP, and my Linksys router won’t let me route it to an external IP. Any thoughts on that (though I’m sure if I can get this apache thing working external access will be possible) would be appreciated.

    Thanks again!

    #16916

    w1ll14m
    Participant

    i think you should take a better look at virtual hosting in apache.
    Also localhost:8080 is my firefly (i changed default ports)
    you need to define

    Listen 80
    NameVirtualHost *:80
    Before your section

    You also need the right modules enabled
    vhost
    mod_proxy and it’s sub modules

    Also show me the failure you get when starting apache2 πŸ˜‰
    I will soon het a demo online of my daap frontend which might be of interest to some of us πŸ˜‰

    PS
    I use apache as my getaway to mt-daapd
    that is why the virtual host is used πŸ˜‰

Viewing 3 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic.