# Rasa X not reachable on http://domain.com/help/rasa due to absolute path

**URL:** <https://forum.rasa.com/t/rasa-x-not-reachable-on-http-domain-com-help-rasa-due-to-absolute-path/32376>\
**Category:** \[Deprecated\] Rasa X Community Edition\
**Created:** [August 7, 2020, 6:13pm UTC](https://forum.rasa.com/t/rasa-x-not-reachable-on-http-domain-com-help-rasa-due-to-absolute-path/32376 "2020-08-07T18:13:17Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![plattenschieber](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.rasa.com/plattenschieber/32/410_2.png) [@plattenschieber](https://forum.rasa.com/u/plattenschieber)\
**Post date:** [August 7, 2020, 6:13pm UTC](https://forum.rasa.com/t/rasa-x-not-reachable-on-http-domain-com-help-rasa-due-to-absolute-path/32376/1 "2020-08-07T18:13:17Z")

</div>

Hi all,

I am trying to install Rasa X via [docker-compose](https://rasa.com/docs/rasa-x/installation-and-setup/install/docker-compose/). So far everything works fine as long as I’ll point `http://domain.com -> rasa`. As we need to maintain several projects within this domain, Rasa needs to be reachable under [http://domain.com/help/rasa](http://domain.com/help/rasa).

Unfortunately this doesn’t work, because only the login.html is being loaded, but all links to other resources as fonts, pictures, etc. are absolute. The Architecture looks like this:

`User -> Nginx (for the whole domain) -> Rasa_Nginx -> Rasa`

I tried fixing the issue using the following nginx config:

```
# Exact URI match to load the base rasa page without a redirect
    location = /help/rasa {
        proxy_intercept_errors on;
        proxy_pass http://rasa_nginx_1:8080/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
    # Catch for all other rasa resources. Removes proxy URI before passing on
    location /help/rasa {
        proxy_intercept_errors on;
        rewrite ^/help/rasa/(.*)$ /$1 break;
        proxy_pass http://rasa_nginx_1:8080/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }

    location /static {
        proxy_intercept_errors on;
        proxy_pass http://rasa_nginx_1:8080;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }

```

Is there a way to set a `base_url` in Rasa X? I couldn’t find anything.

Best Jeronim

---

<div class="post-metadata">

**Author:** ![plattenschieber](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.rasa.com/plattenschieber/32/410_2.png) [@plattenschieber](https://forum.rasa.com/u/plattenschieber)\
**Post date:** [August 31, 2020, 11:41am UTC](https://forum.rasa.com/t/rasa-x-not-reachable-on-http-domain-com-help-rasa-due-to-absolute-path/32376/2 "2020-08-31T11:41:20Z")

</div>

@akelad @Tobias_Wochinger

Any Idea from the Rasa Team would be greatly appreciated.

---

<div class="post-metadata">

**Author:** ![Tobias\_Wochinger](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.rasa.com/tobias_wochinger/32/4580_2.png) [@Tobias\_Wochinger](https://forum.rasa.com/u/Tobias_Wochinger)\
**Post date:** [September 1, 2020, 7:22am UTC](https://forum.rasa.com/t/rasa-x-not-reachable-on-http-domain-com-help-rasa-due-to-absolute-path/32376/3 "2020-09-01T07:22:37Z")

</div>

@plattenschieber This is the nginx config which our `nginx` container is currently using:

```auto
upstream docker-stack {
  server rasa-production:5005 max_fails=0;
}

upstream docker-rasax-api {
  server rasa-x:5002 max_fails=0;
}

server {
  listen 8080;
  include /opt/bitnami/nginx/conf/conf.d/ssl.conf;

  keepalive_timeout 30;
  client_max_body_size 800M;

  location /core/ {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Host $host;
    proxy_pass http://docker-stack/;
  }

  # avoid users having to change how they configure
  # their credentials URLs between Rasa and Rasa X
  location /webhooks/ {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Host $host;
    proxy_pass http://docker-stack/webhooks/;
  }

  location /socket.io {
    proxy_http_version 1.1;
    proxy_buffering off;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade";
    proxy_pass http://docker-stack/socket.io;
  }

  location /api/ws {
    # following https://www.serverlab.ca/tutorials/linux/web-servers-linux/how-to-configure-nginx-for-websockets/
    # This directive converts the incoming connection to HTTP 1.1, which is
    # required to support WebSockets. The older HTTP 1.0 spec does not provide support
    # for WebSockets, and any requests using HTTP 1.0 will fail.
    proxy_http_version 1.1;
    # Converts the proxied connection to type Upgrade. WebSockets only communicate on
    # Upgraded connections.
    proxy_set_header Upgrade $http_upgrade;
    # Ensure the Connection header value is upgrade
    proxy_set_header Connection "upgrade";

    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Host $host;
    proxy_pass http://docker-rasax-api/api/ws;
  }

  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Host $host;
    proxy_pass http://docker-rasax-api/;
  }

  # pass chat message to production service if environment query parameter
  # is set to `production`, or that parameter isn't set
  location /api/chat$ {
    if ($arg_environment = "") {
        rewrite ^ /core/webhooks/rasa/webhook last;
    }
    if ($arg_environment = "production") {
        rewrite ^ /core/webhooks/rasa/webhook last;
    }
    proxy_pass http://docker-rasax-api/api/chat;
  }

  location /nginx_status {
    stub_status on;

    access_log off;
    allow 127.0.0.1;
    deny all;
  }
}

```

If you prefix every location clause with a a `/help/rasa` then you should get the expected result.

The other option would be to put another reverse proxy in front of everything, which redirects `/help/rasa` to the `rasa-x` nginx container
