NGINX Serve static files inside a nested location The 2019 Stack Overflow Developer Survey Results Are In Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) Come Celebrate our 10 Year Anniversary!Help needed setting up nginx to serve static filesnginx redirect issue with upstream configurationNginx proxy pass works for https but not httpnginx load balancer rewrite to listen portNginx subversion commit failureGo(lang) with nginx - Serving Static FilesHow to serve static files for multiple Django projects via nginx to same domainNginx/Apache: set HSTS only if X-Forwarded-Proto is httpsUnexpected behaviour with nested location, alias and php-fpm upstreamNginx reverse proxy to many local servers + webserver duty
Homework question about an engine pulling a train
Would an alien lifeform be able to achieve space travel if lacking in vision?
Deal with toxic manager when you can't quit
Match Roman Numerals
Did the UK government pay "millions and millions of dollars" to try to snag Julian Assange?
Why can't wing-mounted spoilers be used to steepen approaches?
Is an up-to-date browser secure on an out-of-date OS?
What to do when moving next to a bird sanctuary with a loosely-domesticated cat?
Define a list range inside a list
TDS update packages don't remove unneeded items
How to politely respond to generic emails requesting a PhD/job in my lab? Without wasting too much time
The following signatures were invalid: EXPKEYSIG 1397BC53640DB551
How to determine omitted units in a publication
What was the last x86 CPU that did not have the x87 floating-point unit built in?
What can I do if neighbor is blocking my solar panels intentionally?
Make it rain characters
Single author papers against my advisor's will?
Pretty sure I'm over complicating my loops but unsure how to simplify
Does Parliament hold absolute power in the UK?
Is there a way to generate uniformly distributed points on a sphere from a fixed amount of random real numbers per point?
Fixing different display colors within string
Word for: a synonym with a positive connotation?
How to make Illustrator type tool selection automatically adapt with text length
One-dimensional Japanese puzzle
NGINX Serve static files inside a nested location
The 2019 Stack Overflow Developer Survey Results Are In
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
Come Celebrate our 10 Year Anniversary!Help needed setting up nginx to serve static filesnginx redirect issue with upstream configurationNginx proxy pass works for https but not httpnginx load balancer rewrite to listen portNginx subversion commit failureGo(lang) with nginx - Serving Static FilesHow to serve static files for multiple Django projects via nginx to same domainNginx/Apache: set HSTS only if X-Forwarded-Proto is httpsUnexpected behaviour with nested location, alias and php-fpm upstreamNginx 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 have a nested location directive, I want to serve the app at the /api and the static files in the /api/static/
For serving static files I'm using try_files $uri /dev/null =404 inside a nested location.
location /api/
location /api/static/
try_files $uri /dev/null =404;
root /shared_volumes/staticfiles/;
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 $scheme;
proxy_pass http://app:8000/api/;
but that doesn't work, nginx returns not found when accesing http://app/api/static/afile.css although the file exists in /shared_volumes/static/afile.css
In the NGINX docs $uri is
current URI in request, normalized The value of $uri may change during
request processing, e.g. when doing internal redirects, or when using
index files.
How does nginx $uri behave in nested location?
Does nginx search file api/static/afile.css in /shared_volumes/staticfiles/ instead of afile.css?
nginx
add a comment |
I have a nested location directive, I want to serve the app at the /api and the static files in the /api/static/
For serving static files I'm using try_files $uri /dev/null =404 inside a nested location.
location /api/
location /api/static/
try_files $uri /dev/null =404;
root /shared_volumes/staticfiles/;
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 $scheme;
proxy_pass http://app:8000/api/;
but that doesn't work, nginx returns not found when accesing http://app/api/static/afile.css although the file exists in /shared_volumes/static/afile.css
In the NGINX docs $uri is
current URI in request, normalized The value of $uri may change during
request processing, e.g. when doing internal redirects, or when using
index files.
How does nginx $uri behave in nested location?
Does nginx search file api/static/afile.css in /shared_volumes/staticfiles/ instead of afile.css?
nginx
1
The URI/api/static/afile.csswill be looked for at/shared_volumes/staticfiles/api/static/afile.css. That's howrootworks. Perhaps you need to usealiasinstead.
– Richard Smith
Apr 8 at 12:40
BTW, thistry_filesis meaningless. Even more, it will try file$root/dev/null, I doubt you've meant that
– Alexey Ten
Apr 8 at 12:49
add a comment |
I have a nested location directive, I want to serve the app at the /api and the static files in the /api/static/
For serving static files I'm using try_files $uri /dev/null =404 inside a nested location.
location /api/
location /api/static/
try_files $uri /dev/null =404;
root /shared_volumes/staticfiles/;
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 $scheme;
proxy_pass http://app:8000/api/;
but that doesn't work, nginx returns not found when accesing http://app/api/static/afile.css although the file exists in /shared_volumes/static/afile.css
In the NGINX docs $uri is
current URI in request, normalized The value of $uri may change during
request processing, e.g. when doing internal redirects, or when using
index files.
How does nginx $uri behave in nested location?
Does nginx search file api/static/afile.css in /shared_volumes/staticfiles/ instead of afile.css?
nginx
I have a nested location directive, I want to serve the app at the /api and the static files in the /api/static/
For serving static files I'm using try_files $uri /dev/null =404 inside a nested location.
location /api/
location /api/static/
try_files $uri /dev/null =404;
root /shared_volumes/staticfiles/;
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 $scheme;
proxy_pass http://app:8000/api/;
but that doesn't work, nginx returns not found when accesing http://app/api/static/afile.css although the file exists in /shared_volumes/static/afile.css
In the NGINX docs $uri is
current URI in request, normalized The value of $uri may change during
request processing, e.g. when doing internal redirects, or when using
index files.
How does nginx $uri behave in nested location?
Does nginx search file api/static/afile.css in /shared_volumes/staticfiles/ instead of afile.css?
nginx
nginx
edited Apr 8 at 10:35
otong
asked Apr 8 at 10:16
otongotong
84
84
1
The URI/api/static/afile.csswill be looked for at/shared_volumes/staticfiles/api/static/afile.css. That's howrootworks. Perhaps you need to usealiasinstead.
– Richard Smith
Apr 8 at 12:40
BTW, thistry_filesis meaningless. Even more, it will try file$root/dev/null, I doubt you've meant that
– Alexey Ten
Apr 8 at 12:49
add a comment |
1
The URI/api/static/afile.csswill be looked for at/shared_volumes/staticfiles/api/static/afile.css. That's howrootworks. Perhaps you need to usealiasinstead.
– Richard Smith
Apr 8 at 12:40
BTW, thistry_filesis meaningless. Even more, it will try file$root/dev/null, I doubt you've meant that
– Alexey Ten
Apr 8 at 12:49
1
1
The URI
/api/static/afile.css will be looked for at /shared_volumes/staticfiles/api/static/afile.css. That's how root works. Perhaps you need to use alias instead.– Richard Smith
Apr 8 at 12:40
The URI
/api/static/afile.css will be looked for at /shared_volumes/staticfiles/api/static/afile.css. That's how root works. Perhaps you need to use alias instead.– Richard Smith
Apr 8 at 12:40
BTW, this
try_files is meaningless. Even more, it will try file $root/dev/null, I doubt you've meant that– Alexey Ten
Apr 8 at 12:49
BTW, this
try_files is meaningless. Even more, it will try file $root/dev/null, I doubt you've meant that– Alexey Ten
Apr 8 at 12:49
add a comment |
1 Answer
1
active
oldest
votes
I changed the /api/static/ location directive as sugested by @Richard and @Alexey in the comment above
location /api/static/
alias /shared_volumes/staticfiles/;
and it now works, thanks!
add a comment |
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
);
);
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%2f961996%2fnginx-serve-static-files-inside-a-nested-location%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
I changed the /api/static/ location directive as sugested by @Richard and @Alexey in the comment above
location /api/static/
alias /shared_volumes/staticfiles/;
and it now works, thanks!
add a comment |
I changed the /api/static/ location directive as sugested by @Richard and @Alexey in the comment above
location /api/static/
alias /shared_volumes/staticfiles/;
and it now works, thanks!
add a comment |
I changed the /api/static/ location directive as sugested by @Richard and @Alexey in the comment above
location /api/static/
alias /shared_volumes/staticfiles/;
and it now works, thanks!
I changed the /api/static/ location directive as sugested by @Richard and @Alexey in the comment above
location /api/static/
alias /shared_volumes/staticfiles/;
and it now works, thanks!
edited Apr 9 at 3:52
answered Apr 9 at 3:44
otongotong
84
84
add a comment |
add a comment |
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%2f961996%2fnginx-serve-static-files-inside-a-nested-location%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
1
The URI
/api/static/afile.csswill be looked for at/shared_volumes/staticfiles/api/static/afile.css. That's howrootworks. Perhaps you need to usealiasinstead.– Richard Smith
Apr 8 at 12:40
BTW, this
try_filesis meaningless. Even more, it will try file$root/dev/null, I doubt you've meant that– Alexey Ten
Apr 8 at 12:49