Ghost Admin is a blank page with missing css and js but /blog is working


#1

I can’t access my ghost admin panel, not sure why. Last week I could do it and I’ve only modified a bit the NGINX, which after this happened I immediately undid, but to no avail.

In the end when I try to enter to example.com/blog/ghost the following error shown at the bottom appears.

  • What version of Ghost are you using?

    dev@example-master:/var/www/example/blog$ ghost -v
    Ghost-CLI version: 1.9.8
    Ghost version: 2.2.4 (at /var/www/example/blog)
    
  • What configuration?
    My stack is, NGINX server, and Next.js for the front-end + backend with Node.js

    server {
    
    # a bunch of SSL and HTTPS configurations go here
    
    location / {
      proxy_pass http://localhost:3000;
      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 ^~ /blog {
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header Host $http_host;
      proxy_pass http://127.0.0.1:2369;
      proxy_redirect off;
    }
    
    location /budget/ {
      rewrite ^/budget(/.*)$ $1 break;
      proxy_pass http://aaa.bbb.ccc.ddd;
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto https;
      proxy_redirect off;
    }
    
      location ~ /.well-known {
          allow all;
      }
    
    }
    
  • What browser?

Chrome

  • What errors or information do you see in the console?

    dev@example-master:/var/www/example/blog$ ghost log
    + sudo systemctl is-active ghost_example-co
    [2018-11-08 00:03:18] INFO "GET /blog/" 200 54ms
    [2018-11-08 00:03:33] INFO "GET /blog/ghost" 301 1ms
    [2018-11-08 00:03:33] INFO "GET /blog/ghost/" 200 7ms
    [2018-11-08 00:03:33] INFO "GET /blog/ghost/assets/ghost.min-52a4ee573671c227e17e9f9f62bc4d5e.css/" 404 1ms
    [2018-11-08 00:03:34] INFO "GET /blog/ghost/assets/vendor.min-e71cb5c677f51d517625c8c87005a74a.css/" 404 1ms
    [2018-11-08 00:03:34] INFO "GET /blog/ghost/assets/ghost.min-ca2efe7259fcf85fe0bb3c18071da850.js/" 404 1ms
    [2018-11-08 00:03:34] INFO "GET /blog/ghost/assets/vendor.min-b6c746e6d718a54841a93b04223a8094.js/" 404 2ms
    [2018-11-08 00:03:34] INFO "GET /blog/ghost/assets/ghost.min-ca2efe7259fcf85fe0bb3c18071da850.js/" 404 1ms
    
  • What steps could someone else take to reproduce the issue you’re having?

Not sure really. Everything was working perfectly yesterday. Today I just for another reason decided to do ghost restart after adding the following to the NGINX config:

rewrite ^(.*[^/])$ $1/ permanent;

After I found that I couldn’t access the ghost admin panel I undid that line and did the ghost restart and that’s where this odyssey started.

Note: the /budget/ route is pointing to an external server. Not sure if that’s worth knowing.

Any ideas what I should try and do to fix this? Any help would be appreciated :slight_smile:

Cheers!


#2

@fillipvt what url value do you have set in your config.production.json file?


#3

This is the whole config.production.json file:

{
  "url": "https://example.com/blog",
  "server": {
    "port": 2369,
    "host": "127.0.0.1"
  },
  "database": {
    "client": "mysql",
    "connection": {
      "host": "localhost",
      "user": "ghost-649",
      "password": "****",
      "database": "blog_prod"
    }
  },
  "mail": {
    "transport": "Direct"
  },
  "logging": {
    "transports": [
      "file",
      "stdout"
    ]
  },
  "process": "systemd",
  "paths": {
    "contentPath": "/var/www/example/blog/content"
  },
  "bootstrap-socket": {
    "port": 8000,
    "host": "localhost"
  }
}