skip to Main Content

In file /etc/apache2/sites-available/000-default.conf

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    ProxyPass / http://localhost:7000/
</VirtualHost>

When I type in the browser the address http://example.com I get a response from the application running on port 7000.
What needs to be added in the settings so that when typing http://example.com in the browser, I would receive the contents of the /var/www/html/ directory, and when typing http://example.com/emby/, the response from the application on port 7000?

2

Answers


  1. Chosen as BEST ANSWER

    Found a solution to my problem in this answer: httpd - reverse proxy on multiple ports

    As a result, the setting looks like this:

    ProxyPass /emby/ http://localhost:7000/
    ProxyPassReverse /emby/ http://localhost:7000/
    

    I also created a folder:

    mkdir /var/www/html/emby
    

  2. As per https://httpd.apache.org/docs/2.4/mod/mod_proxy.html you need to do

    ProxyPass "/emby" "http://localhost:7000/"
    ProxyPassReverse "/emby" "http://localhost:7000/"
    

    Keep in mind that ProxyPass and ProxyPassReverse do not rewrite any HTML or JS so if you have for example a SPA that loads from / or uses some absolute path, it may stop working.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search