# Basic Setup Question - URL and Reverse Proxy

**URL:** <https://forum.ghost.org/t/basic-setup-question-url-and-reverse-proxy/18037>\
**Category:** Installation\
**Created:** [November 4, 2020, 5:32pm UTC](https://forum.ghost.org/t/basic-setup-question-url-and-reverse-proxy/18037 "2020-11-04T17:32:25Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![TopBanana123](https://avatars.discourse-cdn.com/v4/letter/t/c4cdca/32.png) [@TopBanana123](https://forum.ghost.org/u/TopBanana123)\
**Post date:** [November 4, 2020, 5:32pm UTC](https://forum.ghost.org/t/basic-setup-question-url-and-reverse-proxy/18037/1 "2020-11-04T17:32:25Z")

</div>

This should be really simply, but I’ve been messing with this for hours. Any help at all is appreciated

Currently I run the Docker image of Ghost, and then traefik hanldes being the reverse proxy out to the internet. traefik connects to ghost directly inside the docker network using port 2368

I am looking to replicate this setup outside of Docker, using NGINX Proxy Manager as the reverse proxy in its own VM, and then Ghost installed natively inside Ubuntu

NGINX Proxy Manager is all setup, configured and working. It has blog._domain_.com all setup with a cert and ready to go, I just need to point it at Ghost

For the ghost config, what do I enter as the URL? If I enter https blog._domain_.com, it wants to setup letsencrypt, which I don’t want. Because NGINX Proxy Manager is doing that

If I enter [http://blog](http://blog)._domain_.com, it works, but some images for some reason are served over http, and some https causing weird page loadings.

If I enter [http://localhost:2368](http://localhost:2368), I can’t hit anything even locally

If I enter [http://blog](http://blog)._domain_.com:2368 it does skip the local NGINX which I assume is what I want, but even with a host file entry I can’t get to it even on that port

What should I be doing?

Thanks

---

<div class="post-metadata">

**Author:** ![TopBanana123](https://avatars.discourse-cdn.com/v4/letter/t/c4cdca/32.png) [@TopBanana123](https://forum.ghost.org/u/TopBanana123)\
**Post date:** [November 4, 2020, 6:06pm UTC](https://forum.ghost.org/t/basic-setup-question-url-and-reverse-proxy/18037/3 "2020-11-04T18:06:45Z")

</div>

Well, is Nginx required? I can’t hit it at all without nginx

 ![2020-11-04 11_56_31-10.0.70.112 - Remote Desktop Connection](https://us1.discourse-cdn.com/flex015/uploads/ghost2/original/2X/d/d16d8047392f8bb05d8348a976e6e65816df2e42.png)

---

<div class="post-metadata">

**Author:** ![vikaspotluri123](https://sea1.discourse-cdn.com/flex015/user_avatar/forum.ghost.org/vikaspotluri123/32/24_2.png) [@vikaspotluri123](https://forum.ghost.org/u/vikaspotluri123)\
**Post date:** [November 4, 2020, 7:28pm UTC](https://forum.ghost.org/t/basic-setup-question-url-and-reverse-proxy/18037/4 "2020-11-04T19:28:16Z")

</div>

The URL has to be `https://your.site{/subpath}`. This is the URL that Ghost will use for _everything_. If you’re having issues with proxies, make sure you’re passing the `x-forwarded-proto` header to Ghost, otherwise it won’t see that the URL was https

---

<div class="post-metadata">

**Author:** ![TopBanana123](https://avatars.discourse-cdn.com/v4/letter/t/c4cdca/32.png) [@TopBanana123](https://forum.ghost.org/u/TopBanana123)\
**Post date:** [November 5, 2020, 1:12am UTC](https://forum.ghost.org/t/basic-setup-question-url-and-reverse-proxy/18037/5 "2020-11-05T01:12:18Z")

</div>

Are you sure it has to be /subpath? My current setup has everything on the root domain [blog.whatever.com](http://blog.whatever.com)

---

<div class="post-metadata">

**Author:** ![vikaspotluri123](https://sea1.discourse-cdn.com/flex015/user_avatar/forum.ghost.org/vikaspotluri123/32/24_2.png) [@vikaspotluri123](https://forum.ghost.org/u/vikaspotluri123)\
**Post date:** [November 5, 2020, 1:42am UTC](https://forum.ghost.org/t/basic-setup-question-url-and-reverse-proxy/18037/6 "2020-11-05T01:42:56Z")

</div>

You don’t need it - that’s why I put `{/subpath}` in curly braces 😃

---

<div class="post-metadata">

**Author:** ![TopBanana123](https://avatars.discourse-cdn.com/v4/letter/t/c4cdca/32.png) [@TopBanana123](https://forum.ghost.org/u/TopBanana123)\
**Post date:** [November 5, 2020, 1:55am UTC](https://forum.ghost.org/t/basic-setup-question-url-and-reverse-proxy/18037/7 "2020-11-05T01:55:08Z")

</div>

Ah I see, my bad!

Is Nginx on the install required do you know? I was hoping to skip it

---

<div class="post-metadata">

**Author:** ![vikaspotluri123](https://sea1.discourse-cdn.com/flex015/user_avatar/forum.ghost.org/vikaspotluri123/32/24_2.png) [@vikaspotluri123](https://forum.ghost.org/u/vikaspotluri123)\
**Post date:** [November 5, 2020, 2:47am UTC](https://forum.ghost.org/t/basic-setup-question-url-and-reverse-proxy/18037/8 "2020-11-05T02:47:11Z")

</div>

You don’t need to set up nginx specifically, but it’s strongly suggested that you put a reverse proxy in front of Ghost

---

<div class="post-metadata">

**Author:** ![TopBanana123](https://avatars.discourse-cdn.com/v4/letter/t/c4cdca/32.png) [@TopBanana123](https://forum.ghost.org/u/TopBanana123)\
**Post date:** [November 6, 2020, 1:37am UTC](https://forum.ghost.org/t/basic-setup-question-url-and-reverse-proxy/18037/9 "2020-11-06T01:37:11Z")

</div>

So locally I should still be able to access Ghost even without NGINX setup? There must be another issue at play then as to why I can’t get to the UI. Very strange

I’ve just spent hours working on this, and its got to be an issue with the installer. I’ve even rebuilt the machine entirely, no luck. If the installer doesn’t setup nginx, you can’t get to the UI

If I select the option for nginx, boom, I can get to it

Am I missing something?

---

<div class="post-metadata">

**Author:** ![vikaspotluri123](https://sea1.discourse-cdn.com/flex015/user_avatar/forum.ghost.org/vikaspotluri123/32/24_2.png) [@vikaspotluri123](https://forum.ghost.org/u/vikaspotluri123)\
**Post date:** [November 6, 2020, 6:25am UTC](https://forum.ghost.org/t/basic-setup-question-url-and-reverse-proxy/18037/10 "2020-11-06T06:25:29Z")

</div>

> [@TopBanana123](#):
>
> If the installer doesn’t setup nginx, you can’t get to the UI

My suggestion would be to try and validate that your proxy is properly set up by trying to curl your ghost site - if that’s not the case, that means something’s wrong with how you’re proxying to ghost. If it does work, that means there’s something wrong between your proxy and browser.

To be clear - Ghost is able to run locally without any kind of proxy. However, when you expose it to the internet, you want to put a proxy in front of it for minimum security. Ghost will only serve requests, so if you’re trying to use SSL, the proxy has to terminate SSL and tell Ghost that the request came over an https connection.
