Trouble with navigation item


#1

The URL is: a-view.org

The top-level item to choose is “Florida Coast”. You will get a 404.

Here is why:

That menu item refers to a directory of static html. I have nginx configured to access static content with https. If you access it with http, nginx won’t let you because there is no server block for static content using http. The navigation of Ghost forces the url to use http–so the pages cannot be reached.

Here is the navigation item for it from the design page:

The url for the nav item Florida Coast must begin with https. This, however is impossible because the base name of the url is a-view.org, the same as the rest of the Ghost site. Instead, this link needs to be treated as an external link with a different base name, which would work.

Unfortunately, I don’t wan to host another website on the server with yet another certificate and nginx instance just for a handful of simple, static pages.

Why not allow https in the URL field of the navigation menu?

Alternatively, is there another work around?


#2

You don’t need to do this. If you already have one nginx instance which has a certificate then that’s all that’s needed for both your Ghost instance and your static pages, they should both be using the same nginx instance.


#3

Agreed.

I just wasn’t able to navigate to the static pages.

It’s working now,

I added an explicit location block to the non-SSL nginx config which refers to the static address. I already had this in the ssl config, where it was really needed.

 location /static-test/ {
    alias /var/www/static-test/;
 }

This may have fixed it. It had previously worked without this, but that might have been an artifact that I always browse securely and got a secure tab by default (with the little lock).

At the end of the day I think restarting nginx is what really fixed it.

Let’s see how long it stays fixed!

Thanks.


#4

I recommend you change your configured URL for Ghost to be https, not http. This is the default setup now, and as you already have a certificate there’s no reason to be using http at all.

Should simplify things for you.


#5

Thanks. Where is that setting?

  • Lewis

#6

Assuming you used ghost cli you can change the config with ghost config url https://yourdomain.com and then restart Ghost with ghost restart.


#7

Thanks. Had it working with a small change the nginx server block for the static pages. Also did this. Easy.