How can I make Logitech Media Server available without specifying a port number?

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP








up vote
1
down vote

favorite












Logitech Media Server is a streaming audio server formerly by Slim Devices known as SlimServer. It streams audio to Squeezebox devices (by Logitech), and third party devices, like Raspberry Pi-based PiCorePlayer.



When installed with default options, the Logitech Media Server is available on port 9000. The default URL is http://myserver:9000.



I would like to rewrite the URL as http://myserver/music.



From peers, I understand a reverse proxy server is required. I've attempted to use nginx for this without success. I am quite sure Apache could work for this, but have not been successful with either solution. I am eager to learn!



This article, on the SlimDevices wiki, explains the process using Apache. I followed the article, but have not been successful.



The article states to install the package libapache2-mod-proxy-html, which is not found. I understand from this article, it is no longer required. Following the instructions, it seems libapache2-mod-proxy-html is not the cause of my problem. I'm the one asking for help, so I defer to others.



The article's configuration file is:



# Slimserver Reverse Proxy Configuration
# Prepared by BV January 2008
#
# Make sure that the server cannot be abused
#
ProxyRequests Off

# The Proxy section below allows internet users
# to access the internal server

ProxyPass /slimserver/ http://localhost:9000/
ProxyHTMLURLMap http://localhost:9000 /slimserver
<Location /slimserver/>
Order allow,deny
Allow from all
ProxyPassReverse /
SetOutputFilter proxy-html
ProxyHTMLURLMap / /slimserver/
ProxyHTMLURLMap /slimserver /slimserver
RequestHeader unset Accept-Encoding
</Location>


When I implement the article's solution and attempt to access the Logitech Media Server on http://myserver/slimserver or http://myserver/slimserver, I get the proper page background, but the main content only says Loading Logitech Media Server....
Loading Logitech Media Server... screen image
The URL http://myserver:9000 works. I can interact with the logitech media server normally.



I would prefer to learn the way to do this in nginx, as that's what my coworkers use today and are most familiar with. If I am shown how to do this in Apache2, I could attempt to duplicate the functionality in nginx myself as a learning experience. Once shown the right way, I will go into the Apache or nginx docs and research the details of the solution. Rewriting the URL as described above is something I've wanted to do for years [insert embarrassed face emoji here] but have not been successful.










share|improve this question



























    up vote
    1
    down vote

    favorite












    Logitech Media Server is a streaming audio server formerly by Slim Devices known as SlimServer. It streams audio to Squeezebox devices (by Logitech), and third party devices, like Raspberry Pi-based PiCorePlayer.



    When installed with default options, the Logitech Media Server is available on port 9000. The default URL is http://myserver:9000.



    I would like to rewrite the URL as http://myserver/music.



    From peers, I understand a reverse proxy server is required. I've attempted to use nginx for this without success. I am quite sure Apache could work for this, but have not been successful with either solution. I am eager to learn!



    This article, on the SlimDevices wiki, explains the process using Apache. I followed the article, but have not been successful.



    The article states to install the package libapache2-mod-proxy-html, which is not found. I understand from this article, it is no longer required. Following the instructions, it seems libapache2-mod-proxy-html is not the cause of my problem. I'm the one asking for help, so I defer to others.



    The article's configuration file is:



    # Slimserver Reverse Proxy Configuration
    # Prepared by BV January 2008
    #
    # Make sure that the server cannot be abused
    #
    ProxyRequests Off

    # The Proxy section below allows internet users
    # to access the internal server

    ProxyPass /slimserver/ http://localhost:9000/
    ProxyHTMLURLMap http://localhost:9000 /slimserver
    <Location /slimserver/>
    Order allow,deny
    Allow from all
    ProxyPassReverse /
    SetOutputFilter proxy-html
    ProxyHTMLURLMap / /slimserver/
    ProxyHTMLURLMap /slimserver /slimserver
    RequestHeader unset Accept-Encoding
    </Location>


    When I implement the article's solution and attempt to access the Logitech Media Server on http://myserver/slimserver or http://myserver/slimserver, I get the proper page background, but the main content only says Loading Logitech Media Server....
    Loading Logitech Media Server... screen image
    The URL http://myserver:9000 works. I can interact with the logitech media server normally.



    I would prefer to learn the way to do this in nginx, as that's what my coworkers use today and are most familiar with. If I am shown how to do this in Apache2, I could attempt to duplicate the functionality in nginx myself as a learning experience. Once shown the right way, I will go into the Apache or nginx docs and research the details of the solution. Rewriting the URL as described above is something I've wanted to do for years [insert embarrassed face emoji here] but have not been successful.










    share|improve this question

























      up vote
      1
      down vote

      favorite









      up vote
      1
      down vote

      favorite











      Logitech Media Server is a streaming audio server formerly by Slim Devices known as SlimServer. It streams audio to Squeezebox devices (by Logitech), and third party devices, like Raspberry Pi-based PiCorePlayer.



      When installed with default options, the Logitech Media Server is available on port 9000. The default URL is http://myserver:9000.



      I would like to rewrite the URL as http://myserver/music.



      From peers, I understand a reverse proxy server is required. I've attempted to use nginx for this without success. I am quite sure Apache could work for this, but have not been successful with either solution. I am eager to learn!



      This article, on the SlimDevices wiki, explains the process using Apache. I followed the article, but have not been successful.



      The article states to install the package libapache2-mod-proxy-html, which is not found. I understand from this article, it is no longer required. Following the instructions, it seems libapache2-mod-proxy-html is not the cause of my problem. I'm the one asking for help, so I defer to others.



      The article's configuration file is:



      # Slimserver Reverse Proxy Configuration
      # Prepared by BV January 2008
      #
      # Make sure that the server cannot be abused
      #
      ProxyRequests Off

      # The Proxy section below allows internet users
      # to access the internal server

      ProxyPass /slimserver/ http://localhost:9000/
      ProxyHTMLURLMap http://localhost:9000 /slimserver
      <Location /slimserver/>
      Order allow,deny
      Allow from all
      ProxyPassReverse /
      SetOutputFilter proxy-html
      ProxyHTMLURLMap / /slimserver/
      ProxyHTMLURLMap /slimserver /slimserver
      RequestHeader unset Accept-Encoding
      </Location>


      When I implement the article's solution and attempt to access the Logitech Media Server on http://myserver/slimserver or http://myserver/slimserver, I get the proper page background, but the main content only says Loading Logitech Media Server....
      Loading Logitech Media Server... screen image
      The URL http://myserver:9000 works. I can interact with the logitech media server normally.



      I would prefer to learn the way to do this in nginx, as that's what my coworkers use today and are most familiar with. If I am shown how to do this in Apache2, I could attempt to duplicate the functionality in nginx myself as a learning experience. Once shown the right way, I will go into the Apache or nginx docs and research the details of the solution. Rewriting the URL as described above is something I've wanted to do for years [insert embarrassed face emoji here] but have not been successful.










      share|improve this question















      Logitech Media Server is a streaming audio server formerly by Slim Devices known as SlimServer. It streams audio to Squeezebox devices (by Logitech), and third party devices, like Raspberry Pi-based PiCorePlayer.



      When installed with default options, the Logitech Media Server is available on port 9000. The default URL is http://myserver:9000.



      I would like to rewrite the URL as http://myserver/music.



      From peers, I understand a reverse proxy server is required. I've attempted to use nginx for this without success. I am quite sure Apache could work for this, but have not been successful with either solution. I am eager to learn!



      This article, on the SlimDevices wiki, explains the process using Apache. I followed the article, but have not been successful.



      The article states to install the package libapache2-mod-proxy-html, which is not found. I understand from this article, it is no longer required. Following the instructions, it seems libapache2-mod-proxy-html is not the cause of my problem. I'm the one asking for help, so I defer to others.



      The article's configuration file is:



      # Slimserver Reverse Proxy Configuration
      # Prepared by BV January 2008
      #
      # Make sure that the server cannot be abused
      #
      ProxyRequests Off

      # The Proxy section below allows internet users
      # to access the internal server

      ProxyPass /slimserver/ http://localhost:9000/
      ProxyHTMLURLMap http://localhost:9000 /slimserver
      <Location /slimserver/>
      Order allow,deny
      Allow from all
      ProxyPassReverse /
      SetOutputFilter proxy-html
      ProxyHTMLURLMap / /slimserver/
      ProxyHTMLURLMap /slimserver /slimserver
      RequestHeader unset Accept-Encoding
      </Location>


      When I implement the article's solution and attempt to access the Logitech Media Server on http://myserver/slimserver or http://myserver/slimserver, I get the proper page background, but the main content only says Loading Logitech Media Server....
      Loading Logitech Media Server... screen image
      The URL http://myserver:9000 works. I can interact with the logitech media server normally.



      I would prefer to learn the way to do this in nginx, as that's what my coworkers use today and are most familiar with. If I am shown how to do this in Apache2, I could attempt to duplicate the functionality in nginx myself as a learning experience. Once shown the right way, I will go into the Apache or nginx docs and research the details of the solution. Rewriting the URL as described above is something I've wanted to do for years [insert embarrassed face emoji here] but have not been successful.







      apache2 nginx reverse-proxy






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 6 at 11:26

























      asked Mar 6 at 11:19









      ndemarco

      133




      133




















          2 Answers
          2






          active

          oldest

          votes

















          up vote
          2
          down vote













          I haven't tried it yet, but why not just set the port to 80 when slimserver.pl is started. I run it on my work machine where I only basic user permissions.

          Everything runs out of my home dir.



          I have a completely standalone installation, no priviledged user to start/stop etc. It's very flexible if you dig into it.



          This is a guidance for the usage of the command:



          Usage: ./slimserver.pl [--audiodir ] [--daemon] [--stdio] [--logfile ] 
          [--user ]
          [--group ]
          [--httpport [--httpaddr ]]
          [--cliport [--cliaddr ]]
          [--prefsfile [--pidfile ]]
          [--d_various]
          --help => Show this usage information.
          --audiodir => The path to a directory of your MP3 files.
          --logfile => Specify a file for error logging.
          --daemon => Run the server in the background.
          This may only work on Unix-like systems.
          --stdio => Use standard in and out as a command line interface
          to the server
          --user => Specify the user that server should run as.
          Only usable if server is started as root.
          This may only work on Unix-like systems.
          --group => Specify the group that server should run as.
          Only usable if server is started as root.
          This may only work on Unix-like systems.
          --httpport => Activate the web interface on the specified port.
          Set to 0 in order disable the web server.
          --httpaddr => Activate the web interface on the specified IP address.
          --cliport => Activate the command line interface TCP/IP interface
          on the specified port. Set to 0 in order disable the
          command line interface server.
          --cliaddr => Activate the command line interface TCP/IP
          interface on the specified IP address.
          --prefsfile => Specify the path to the preferences file
          --pidfile => Specify where a process ID file should be stored
          --quiet => Minimize the amount of text output
          --playeraddr => Specify the _server's_ IP address to use to connect
          to players
          --streamaddr => Specify the _server's_ IP address to use to connect
          to streaming audio sources
          --nosetup => Disable setup via http.





          share|improve this answer





























            up vote
            1
            down vote













            You can use iptables to do map requests to port 80 back to 9000:



            sudo iptables -I PREROUTING -t nat -p tcp --dport 80 -j REDIRECT --to-port 9000


            This will allow you to request http://myserver/ without the port number. In order to make this persistent across reboots, you'll need to install iptables-persistent



            sudo apt-get install iptables-persistent





            share|improve this answer






















              Your Answer







              StackExchange.ready(function()
              var channelOptions =
              tags: "".split(" "),
              id: "89"
              ;
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function()
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled)
              StackExchange.using("snippets", function()
              createEditor();
              );

              else
              createEditor();

              );

              function createEditor()
              StackExchange.prepareEditor(
              heartbeatType: 'answer',
              convertImagesToLinks: true,
              noModals: false,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: 10,
              bindNavPrevention: true,
              postfix: "",
              onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              );



              );













               

              draft saved


              draft discarded


















              StackExchange.ready(
              function ()
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1012380%2fhow-can-i-make-logitech-media-server-available-without-specifying-a-port-number%23new-answer', 'question_page');

              );

              Post as a guest






























              2 Answers
              2






              active

              oldest

              votes








              2 Answers
              2






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes








              up vote
              2
              down vote













              I haven't tried it yet, but why not just set the port to 80 when slimserver.pl is started. I run it on my work machine where I only basic user permissions.

              Everything runs out of my home dir.



              I have a completely standalone installation, no priviledged user to start/stop etc. It's very flexible if you dig into it.



              This is a guidance for the usage of the command:



              Usage: ./slimserver.pl [--audiodir ] [--daemon] [--stdio] [--logfile ] 
              [--user ]
              [--group ]
              [--httpport [--httpaddr ]]
              [--cliport [--cliaddr ]]
              [--prefsfile [--pidfile ]]
              [--d_various]
              --help => Show this usage information.
              --audiodir => The path to a directory of your MP3 files.
              --logfile => Specify a file for error logging.
              --daemon => Run the server in the background.
              This may only work on Unix-like systems.
              --stdio => Use standard in and out as a command line interface
              to the server
              --user => Specify the user that server should run as.
              Only usable if server is started as root.
              This may only work on Unix-like systems.
              --group => Specify the group that server should run as.
              Only usable if server is started as root.
              This may only work on Unix-like systems.
              --httpport => Activate the web interface on the specified port.
              Set to 0 in order disable the web server.
              --httpaddr => Activate the web interface on the specified IP address.
              --cliport => Activate the command line interface TCP/IP interface
              on the specified port. Set to 0 in order disable the
              command line interface server.
              --cliaddr => Activate the command line interface TCP/IP
              interface on the specified IP address.
              --prefsfile => Specify the path to the preferences file
              --pidfile => Specify where a process ID file should be stored
              --quiet => Minimize the amount of text output
              --playeraddr => Specify the _server's_ IP address to use to connect
              to players
              --streamaddr => Specify the _server's_ IP address to use to connect
              to streaming audio sources
              --nosetup => Disable setup via http.





              share|improve this answer


























                up vote
                2
                down vote













                I haven't tried it yet, but why not just set the port to 80 when slimserver.pl is started. I run it on my work machine where I only basic user permissions.

                Everything runs out of my home dir.



                I have a completely standalone installation, no priviledged user to start/stop etc. It's very flexible if you dig into it.



                This is a guidance for the usage of the command:



                Usage: ./slimserver.pl [--audiodir ] [--daemon] [--stdio] [--logfile ] 
                [--user ]
                [--group ]
                [--httpport [--httpaddr ]]
                [--cliport [--cliaddr ]]
                [--prefsfile [--pidfile ]]
                [--d_various]
                --help => Show this usage information.
                --audiodir => The path to a directory of your MP3 files.
                --logfile => Specify a file for error logging.
                --daemon => Run the server in the background.
                This may only work on Unix-like systems.
                --stdio => Use standard in and out as a command line interface
                to the server
                --user => Specify the user that server should run as.
                Only usable if server is started as root.
                This may only work on Unix-like systems.
                --group => Specify the group that server should run as.
                Only usable if server is started as root.
                This may only work on Unix-like systems.
                --httpport => Activate the web interface on the specified port.
                Set to 0 in order disable the web server.
                --httpaddr => Activate the web interface on the specified IP address.
                --cliport => Activate the command line interface TCP/IP interface
                on the specified port. Set to 0 in order disable the
                command line interface server.
                --cliaddr => Activate the command line interface TCP/IP
                interface on the specified IP address.
                --prefsfile => Specify the path to the preferences file
                --pidfile => Specify where a process ID file should be stored
                --quiet => Minimize the amount of text output
                --playeraddr => Specify the _server's_ IP address to use to connect
                to players
                --streamaddr => Specify the _server's_ IP address to use to connect
                to streaming audio sources
                --nosetup => Disable setup via http.





                share|improve this answer
























                  up vote
                  2
                  down vote










                  up vote
                  2
                  down vote









                  I haven't tried it yet, but why not just set the port to 80 when slimserver.pl is started. I run it on my work machine where I only basic user permissions.

                  Everything runs out of my home dir.



                  I have a completely standalone installation, no priviledged user to start/stop etc. It's very flexible if you dig into it.



                  This is a guidance for the usage of the command:



                  Usage: ./slimserver.pl [--audiodir ] [--daemon] [--stdio] [--logfile ] 
                  [--user ]
                  [--group ]
                  [--httpport [--httpaddr ]]
                  [--cliport [--cliaddr ]]
                  [--prefsfile [--pidfile ]]
                  [--d_various]
                  --help => Show this usage information.
                  --audiodir => The path to a directory of your MP3 files.
                  --logfile => Specify a file for error logging.
                  --daemon => Run the server in the background.
                  This may only work on Unix-like systems.
                  --stdio => Use standard in and out as a command line interface
                  to the server
                  --user => Specify the user that server should run as.
                  Only usable if server is started as root.
                  This may only work on Unix-like systems.
                  --group => Specify the group that server should run as.
                  Only usable if server is started as root.
                  This may only work on Unix-like systems.
                  --httpport => Activate the web interface on the specified port.
                  Set to 0 in order disable the web server.
                  --httpaddr => Activate the web interface on the specified IP address.
                  --cliport => Activate the command line interface TCP/IP interface
                  on the specified port. Set to 0 in order disable the
                  command line interface server.
                  --cliaddr => Activate the command line interface TCP/IP
                  interface on the specified IP address.
                  --prefsfile => Specify the path to the preferences file
                  --pidfile => Specify where a process ID file should be stored
                  --quiet => Minimize the amount of text output
                  --playeraddr => Specify the _server's_ IP address to use to connect
                  to players
                  --streamaddr => Specify the _server's_ IP address to use to connect
                  to streaming audio sources
                  --nosetup => Disable setup via http.





                  share|improve this answer














                  I haven't tried it yet, but why not just set the port to 80 when slimserver.pl is started. I run it on my work machine where I only basic user permissions.

                  Everything runs out of my home dir.



                  I have a completely standalone installation, no priviledged user to start/stop etc. It's very flexible if you dig into it.



                  This is a guidance for the usage of the command:



                  Usage: ./slimserver.pl [--audiodir ] [--daemon] [--stdio] [--logfile ] 
                  [--user ]
                  [--group ]
                  [--httpport [--httpaddr ]]
                  [--cliport [--cliaddr ]]
                  [--prefsfile [--pidfile ]]
                  [--d_various]
                  --help => Show this usage information.
                  --audiodir => The path to a directory of your MP3 files.
                  --logfile => Specify a file for error logging.
                  --daemon => Run the server in the background.
                  This may only work on Unix-like systems.
                  --stdio => Use standard in and out as a command line interface
                  to the server
                  --user => Specify the user that server should run as.
                  Only usable if server is started as root.
                  This may only work on Unix-like systems.
                  --group => Specify the group that server should run as.
                  Only usable if server is started as root.
                  This may only work on Unix-like systems.
                  --httpport => Activate the web interface on the specified port.
                  Set to 0 in order disable the web server.
                  --httpaddr => Activate the web interface on the specified IP address.
                  --cliport => Activate the command line interface TCP/IP interface
                  on the specified port. Set to 0 in order disable the
                  command line interface server.
                  --cliaddr => Activate the command line interface TCP/IP
                  interface on the specified IP address.
                  --prefsfile => Specify the path to the preferences file
                  --pidfile => Specify where a process ID file should be stored
                  --quiet => Minimize the amount of text output
                  --playeraddr => Specify the _server's_ IP address to use to connect
                  to players
                  --streamaddr => Specify the _server's_ IP address to use to connect
                  to streaming audio sources
                  --nosetup => Disable setup via http.






                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited Sep 12 at 19:38









                  zx485

                  996814




                  996814










                  answered Sep 12 at 17:39









                  Thad

                  212




                  212






















                      up vote
                      1
                      down vote













                      You can use iptables to do map requests to port 80 back to 9000:



                      sudo iptables -I PREROUTING -t nat -p tcp --dport 80 -j REDIRECT --to-port 9000


                      This will allow you to request http://myserver/ without the port number. In order to make this persistent across reboots, you'll need to install iptables-persistent



                      sudo apt-get install iptables-persistent





                      share|improve this answer


























                        up vote
                        1
                        down vote













                        You can use iptables to do map requests to port 80 back to 9000:



                        sudo iptables -I PREROUTING -t nat -p tcp --dport 80 -j REDIRECT --to-port 9000


                        This will allow you to request http://myserver/ without the port number. In order to make this persistent across reboots, you'll need to install iptables-persistent



                        sudo apt-get install iptables-persistent





                        share|improve this answer
























                          up vote
                          1
                          down vote










                          up vote
                          1
                          down vote









                          You can use iptables to do map requests to port 80 back to 9000:



                          sudo iptables -I PREROUTING -t nat -p tcp --dport 80 -j REDIRECT --to-port 9000


                          This will allow you to request http://myserver/ without the port number. In order to make this persistent across reboots, you'll need to install iptables-persistent



                          sudo apt-get install iptables-persistent





                          share|improve this answer














                          You can use iptables to do map requests to port 80 back to 9000:



                          sudo iptables -I PREROUTING -t nat -p tcp --dport 80 -j REDIRECT --to-port 9000


                          This will allow you to request http://myserver/ without the port number. In order to make this persistent across reboots, you'll need to install iptables-persistent



                          sudo apt-get install iptables-persistent






                          share|improve this answer














                          share|improve this answer



                          share|improve this answer








                          edited Jul 28 at 22:16









                          Stephen Rauch

                          1,1546716




                          1,1546716










                          answered Jul 28 at 20:46









                          J. Reeves

                          111




                          111



























                               

                              draft saved


                              draft discarded















































                               


                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function ()
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1012380%2fhow-can-i-make-logitech-media-server-available-without-specifying-a-port-number%23new-answer', 'question_page');

                              );

                              Post as a guest













































































                              Popular posts from this blog

                              How do so many people here on Academia.SE, and in general, afford lavish higher education programs?

                              Trouble downloading packages list due to a “Hash sum mismatch” error

                              How do I move numbers in filenames, in a batch renaming operation?