Nginx returning 404 on any path except / (proxy_pass) The 2019 Stack Overflow Developer Survey Results Are InNginx has ssl module, but thinks it doesn'tNginx proxy pass works for https but not httpnginx ssl proxy for one hostname onlyProperly setting up a “default” nginx server for httpsNginx/Apache: set HSTS only if X-Forwarded-Proto is httpsNginX + WordPress + SSL + non-www + W3TC vhost config file questionsnginx reverse proxy hide login query also on 301 redirect or full qualified urlConfigure NGINX : How to handle 500 Error on upstream itself, While Nginx handle other 5xx errorsWhy Nginx calls for invalid certificate in non-existent subdomains just to redirect to 404?Nginx reverse proxy to many local servers + webserver duty
Is it ethical to upload a automatically generated paper to a non peer-reviewed site as part of a larger research?
I am an eight letter word. What am I?
What to do when moving next to a bird sanctuary with a loosely-domesticated cat?
Will it cause any balance problems to have PCs level up and gain the benefits of a long rest mid-fight?
How do you keep chess fun when your opponent constantly beats you?
For what reasons would an animal species NOT cross a *horizontal* land bridge?
Can a flute soloist sit?
Did any laptop computers have a built-in 5 1/4 inch floppy drive?
What could be the right powersource for 15 seconds lifespan disposable giant chainsaw?
Mathematics of imaging the black hole
The phrase "to the numbers born"?
Getting crown tickets for Statue of Liberty
Unitary representations of finite groups over finite fields
Falsification in Math vs Science
Why does the nucleus not repel itself?
Are spiders unable to hurt humans, especially very small spiders?
Is it okay to consider publishing in my first year of PhD?
Why can't devices on different VLANs, but on the same subnet, communicate?
How do PCB vias affect signal quality?
How do I free up internal storage if I don't have any apps downloaded?
Dropping list elements from nested list after evaluation
Does adding complexity mean a more secure cipher?
What do I do when my TA workload is more than expected?
Cooking pasta in a water boiler
Nginx returning 404 on any path except / (proxy_pass)
The 2019 Stack Overflow Developer Survey Results Are InNginx has ssl module, but thinks it doesn'tNginx proxy pass works for https but not httpnginx ssl proxy for one hostname onlyProperly setting up a “default” nginx server for httpsNginx/Apache: set HSTS only if X-Forwarded-Proto is httpsNginX + WordPress + SSL + non-www + W3TC vhost config file questionsnginx reverse proxy hide login query also on 301 redirect or full qualified urlConfigure NGINX : How to handle 500 Error on upstream itself, While Nginx handle other 5xx errorsWhy Nginx calls for invalid certificate in non-existent subdomains just to redirect to 404?Nginx reverse proxy to many local servers + webserver duty
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
I am using nginx as a reverse proxy to serve my various node and react applications. Basically I set a subdomain for each application.
I can query https://demo.myapp.com/ and it gets passed to the correct underlying app but if I query https://demo.myapp.com/login I get a 404. note that I get "404 Not Found" as plain text, no html no nothing.
I find this odd because I copy pasted the config of my other apps and I can definitely call https://myotherapp.myapp.com/login. I have looked online but I didn't find any help on this matter (because I didn't really find a way to formulate my problem ?)
Here's my config (domain names are anonymized but it's exactly the same structure)
server
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
return 301 https://$host$request_uri;
# this one works fine when I call sc.example.io/login
server
server_name sc.example.io;
location /
proxy_pass http://127.0.0.1:5102;
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.io/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.io/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
#this ones 404's when I call demo.example.io/login
server
server_name demo.example.io;
location /
proxy_pass http://127.0.0.1:5110;
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.io/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.io/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
server
if ($host = sc.example.io)
return 301 https://$host$request_uri;
# managed by Certbot
server_name sc.example.io;
listen 80;
return 404; # managed by Certbot
server
if ($host = demo.example.io)
return 301 https://$host$request_uri;
# managed by Certbot
server_name demo.example.io;
listen 80;
return 404; # managed by Certbot
nginx configuration reverse-proxy http-status-code-404
New contributor
add a comment |
I am using nginx as a reverse proxy to serve my various node and react applications. Basically I set a subdomain for each application.
I can query https://demo.myapp.com/ and it gets passed to the correct underlying app but if I query https://demo.myapp.com/login I get a 404. note that I get "404 Not Found" as plain text, no html no nothing.
I find this odd because I copy pasted the config of my other apps and I can definitely call https://myotherapp.myapp.com/login. I have looked online but I didn't find any help on this matter (because I didn't really find a way to formulate my problem ?)
Here's my config (domain names are anonymized but it's exactly the same structure)
server
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
return 301 https://$host$request_uri;
# this one works fine when I call sc.example.io/login
server
server_name sc.example.io;
location /
proxy_pass http://127.0.0.1:5102;
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.io/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.io/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
#this ones 404's when I call demo.example.io/login
server
server_name demo.example.io;
location /
proxy_pass http://127.0.0.1:5110;
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.io/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.io/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
server
if ($host = sc.example.io)
return 301 https://$host$request_uri;
# managed by Certbot
server_name sc.example.io;
listen 80;
return 404; # managed by Certbot
server
if ($host = demo.example.io)
return 301 https://$host$request_uri;
# managed by Certbot
server_name demo.example.io;
listen 80;
return 404; # managed by Certbot
nginx configuration reverse-proxy http-status-code-404
New contributor
Check your application's router.
– Michael Hampton♦
3 hours ago
add a comment |
I am using nginx as a reverse proxy to serve my various node and react applications. Basically I set a subdomain for each application.
I can query https://demo.myapp.com/ and it gets passed to the correct underlying app but if I query https://demo.myapp.com/login I get a 404. note that I get "404 Not Found" as plain text, no html no nothing.
I find this odd because I copy pasted the config of my other apps and I can definitely call https://myotherapp.myapp.com/login. I have looked online but I didn't find any help on this matter (because I didn't really find a way to formulate my problem ?)
Here's my config (domain names are anonymized but it's exactly the same structure)
server
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
return 301 https://$host$request_uri;
# this one works fine when I call sc.example.io/login
server
server_name sc.example.io;
location /
proxy_pass http://127.0.0.1:5102;
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.io/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.io/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
#this ones 404's when I call demo.example.io/login
server
server_name demo.example.io;
location /
proxy_pass http://127.0.0.1:5110;
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.io/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.io/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
server
if ($host = sc.example.io)
return 301 https://$host$request_uri;
# managed by Certbot
server_name sc.example.io;
listen 80;
return 404; # managed by Certbot
server
if ($host = demo.example.io)
return 301 https://$host$request_uri;
# managed by Certbot
server_name demo.example.io;
listen 80;
return 404; # managed by Certbot
nginx configuration reverse-proxy http-status-code-404
New contributor
I am using nginx as a reverse proxy to serve my various node and react applications. Basically I set a subdomain for each application.
I can query https://demo.myapp.com/ and it gets passed to the correct underlying app but if I query https://demo.myapp.com/login I get a 404. note that I get "404 Not Found" as plain text, no html no nothing.
I find this odd because I copy pasted the config of my other apps and I can definitely call https://myotherapp.myapp.com/login. I have looked online but I didn't find any help on this matter (because I didn't really find a way to formulate my problem ?)
Here's my config (domain names are anonymized but it's exactly the same structure)
server
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
return 301 https://$host$request_uri;
# this one works fine when I call sc.example.io/login
server
server_name sc.example.io;
location /
proxy_pass http://127.0.0.1:5102;
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.io/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.io/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
#this ones 404's when I call demo.example.io/login
server
server_name demo.example.io;
location /
proxy_pass http://127.0.0.1:5110;
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.io/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.io/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
server
if ($host = sc.example.io)
return 301 https://$host$request_uri;
# managed by Certbot
server_name sc.example.io;
listen 80;
return 404; # managed by Certbot
server
if ($host = demo.example.io)
return 301 https://$host$request_uri;
# managed by Certbot
server_name demo.example.io;
listen 80;
return 404; # managed by Certbot
nginx configuration reverse-proxy http-status-code-404
nginx configuration reverse-proxy http-status-code-404
New contributor
New contributor
New contributor
asked 4 hours ago
drovfrdrovfr
1
1
New contributor
New contributor
Check your application's router.
– Michael Hampton♦
3 hours ago
add a comment |
Check your application's router.
– Michael Hampton♦
3 hours ago
Check your application's router.
– Michael Hampton♦
3 hours ago
Check your application's router.
– Michael Hampton♦
3 hours ago
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "2"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
drovfr is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f962685%2fnginx-returning-404-on-any-path-except-proxy-pass%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
drovfr is a new contributor. Be nice, and check out our Code of Conduct.
drovfr is a new contributor. Be nice, and check out our Code of Conduct.
drovfr is a new contributor. Be nice, and check out our Code of Conduct.
drovfr is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Server Fault!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f962685%2fnginx-returning-404-on-any-path-except-proxy-pass%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Check your application's router.
– Michael Hampton♦
3 hours ago