-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Blank screen with nginx reverse proxy #64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Could you check if your server is responding with the correct files? The dashboard only makes about 5 requests the dashboard app. Also, the dashboard requires the connection to the dashboard be HTTPS (to prevent accidental leakage of the master keys) which may be causing issues. (although I would expect an error message in that case, not a blank page) |
Identical problem my side. Have HTTPS server and still blank. Title tho says "Parse Dashboard" |
A GET request to https://SERVER_IP/dasboard returns:
Which is correct I guess? But /bundles/dashboard.bundle.js is not correctly served because /bundles is not piped to the express app but instead handled by nginx, which of course cannot find the file. Changing the path in the index.html to:
and changing my nginx setup, so that /dashboard is piped through to the express app as /:
results in the dasboard trying to load but failing with a "404, Oh no, we can't find that page!" error. So it seems like the /dashboard prefix would be needed for other files as well. Can I set this somewhere "globally"? Btw, if I pipe / to the express app, the dashboard works perfectly. But this of course conflicts with other content I would like to serve on /. |
the 404 is because there is no |
@fnberta You manage to find a fix for this? |
I am also having this issue as well in the Heroku. |
I think we can address this. The dashboard is using / to start its paths, so it can only currently be hosted on the root of a URL. Will work on a PR to use relative paths. |
+1 |
Same issue on an EC2 nano instance and OS X El Capitan 10.11.3 both running Node.js 4.3.2 |
@Cliffordwh No, for the moment I am directly accessing the Express app via SSL. But looking forward to switch back to the reverse proxy when the relative paths land! |
@andremilk for your local issue - can you post more info in #120? |
any news on this? or fix to get parse-dashboard to run off a sub? and not the root / thanks |
Hey there, It's an issue with npm instal --production. Unfortunately, this app has not been tested with production flag, so your app will not work without some changes. You'll want to modify the .gitignore file, and remove the following: bundles/ Then, when you run: |
@joeyslack the --production flag is left over from our internal build process for running dashboard.parse.com. For just using the dashboard, I recommend installing from |
Cool thanks. I'll send a PR then with recommendations for deploys working
|
I don't see this solving the issue. All the files are there on the NPM run, just can not run via a sub directory only on root domain ( / ). We need relative paths or set a prefix globally for the path. |
@Cliffordwh I'm personally missing files on npm run, after a npm install --production, you have a /bundles folder after doing that? |
Blank screen with Parse Dashboard title issue is happening to me as well. I have deployed Dashboard to Elastic Beanstalk and having the blank screen there. The Dashboard works locally though. The problem is with loading |
@gfosco any luck on this to allow relative paths? |
Hey guys, read my comment above on how to fix it for remote hosts (like elastic beanstalk). You'll want to first run Then, when you do your commit and deploy, the bundle will be available. Secondarily, if you are using AWS Beanstalk, you'll have to set up a static path for /bundle -> to point to the /public folder. I offered to send a PR but apparently it's not wanted? |
@joeyslack Thanks mate. It did the job. Now I have it up and running with EB. |
+1 |
This should be fixed now. |
I ran an npm update to update to 1.0.8 but it still doesn't work for me behind nginx. {
"apps": [
{
"allowInsecureHTTP": 1,
"serverURL": "url",
"appId": "appid",
"masterKey": "masterkey",
"appName": "appname"
}
],
"users": [
{
"user": "user",
"pass": "pass"
}
]
} And here's my nginx config
I also get 404 on /bundles/dashboard.bundle.js resource. The nginx virtual server config also has HTTPS termination as it is also the reverse proxy for parse-server and that's working. What's wrong? If you need other information, please do tell. Best regards, |
I'm also having the same problem described by @thuantran |
I'm actually not particularly familiar with nginx. @gfosco might be able to help more, or you could ask a question on Stack Overflow or Server Fault. I do know that the relative paths issue originally brought up has been fixed, so it sounds like you might be seeing a different issue. |
Hi, Basically what I want to do is to have Parse Server accessible through the URL: The problem is: when I access <!DOCTYPE html>
<html>
<title>Parse Dashboard</title>
<body>
<div id="browser_mount"></div>
<script src="/bundles/dashboard.bundle.js"></script>
</body>
</html> The script tag is starting with a slash "/". It means that it will look for the file The correct behavior is to have script tag start without "/", like this I hope this helped to clarify the problem :) Thanks. |
Finally manage to fix it, by running the dashboard at root and removing "try_files $uri $uri/ =404;" in location /. In any case the problem with running under relative path like /admin/ on mine previous or any other like @vegidio previously still causing the problem like him stated. |
So far, this is how I have successfully made it work with an EC2 box (amazon Linux distrib.)
MongoDB: Parse-Server : Parse-Dashboard :
5- start the dashboard server in background : NginX :
7- start | restart the NginX service 8- optionally, trace your log files |
For people here who've (like me) tried all of the above but are still getting served a blank page (title but no content): please check the page's sourcecode to make sure it's not empty. If it's not empty, follow the link to the included javascript login.bundle.js or dashboard.bundle.js file. If your browser gives you a 404 (file not found), make sure NginX's This solved it for me, YMMV. More info about sendfile here: https://t37.net/optimisations-nginx-bien-comprendre-sendfile-tcp-nodelay-et-tcp-nopush.html |
Umm.. Had the same issue when i tried to access my dashboard with https://xxxxx.com/dashboard. Used nginx proxy_pass (https to http), and got the blank screen but with net::ERR_CONTENT_LENGTH_MISMATCH in console. Looked around a bit and found that other solution - user nobody; |
Add support to new back4app-dashboard server settings
I'm accessing nginx on my server via an SSL connection and passing the request to the dashboard express app via a reverse proxy. The title of the tab gets named "Parse Dashboard" but the screen is completely blank.
My dashboard config is:
And the nginx proxy config is:
I'm using a similar configuration for the express app that runs parse-server and that works flawlessly. Any idea what could be going wrong here? If I run the dashboard locally it works perfectly fine.
The text was updated successfully, but these errors were encountered: