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

                              Which professions warranted travel in Medieval times?

                              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