What does location ^~ mean in an nginx location blockNginx multiple location issuesWhat does http block do in NginxNginx location block specific filehow to remove location block from $uri in nginx configuration?Having twice a “location / ” block in nginxNginx - Meaning of the ~ (tilde) in the location block of the nginx.conf?nginx giving priority to nested location over outer location blocknginx set variable in locationNginx chooses a random location blockWhy does nginx ignore my location block?
What Exploit Are These User Agents Trying to Use?
Unlock My Phone! February 2018
Finding the reason behind the value of the integral.
Ambiguity in the definition of entropy
Why is the sentence "Das ist eine Nase" correct?
What are the G forces leaving Earth orbit?
How to install cross-compiler on Ubuntu 18.04?
How to enclose theorems and definition in rectangles?
Why is it a bad idea to hire a hitman to eliminate most corrupt politicians?
Sums of two squares in arithmetic progressions
Is "/bin/[.exe" a legitimate file? [Cygwin, Windows 10]
Is it "common practice in Fourier transform spectroscopy to multiply the measured interferogram by an apodizing function"? If so, why?
How can I deal with my CEO asking me to hire someone with a higher salary than me, a co-founder?
Am I breaking OOP practice with this architecture?
Machine learning testing data
How to stretch the corners of this image so that it looks like a perfect rectangle?
What is a Samsaran Word™?
What's the meaning of "Sollensaussagen"?
How to show a landlord what we have in savings?
Why are UK visa biometrics appointments suspended at USCIS Application Support Centers?
Why was Sir Cadogan fired?
How badly should I try to prevent a user from XSSing themselves?
Why didn't Boeing produce its own regional jet?
How do conventional missiles fly?
What does location ^~ mean in an nginx location block
Nginx multiple location issuesWhat does http block do in NginxNginx location block specific filehow to remove location block from $uri in nginx configuration?Having twice a “location / ” block in nginxNginx - Meaning of the ~ (tilde) in the location block of the nginx.conf?nginx giving priority to nested location over outer location blocknginx set variable in locationNginx chooses a random location blockWhy does nginx ignore my location block?
I am looking at an nginx location block that has this symbol ^~
before the location block. What does it do? I am having a hard time googling for it.
location ^~ /realestate/
uwsgi_pass 127.0.0.1:2340;
include /etc/nginx/uwsgi_params;
nginx
add a comment |
I am looking at an nginx location block that has this symbol ^~
before the location block. What does it do? I am having a hard time googling for it.
location ^~ /realestate/
uwsgi_pass 127.0.0.1:2340;
include /etc/nginx/uwsgi_params;
nginx
2
Sadly, our search engine doesn't process the ^ character either, so it will be hard for future users to find this question. :( The^
symbol is borrowed from regular expressions and is referred to as an anchor, specifically the "beginning of line" anchor. Here is a link to the official documentation, but this page has a table that helps to explain its usage better.
– Andrew B
Mar 10 '15 at 22:01
@AndrewB, last link is wrong completely.^~
means "don't check regexp locations if this location is longest prefix match"
– Alexey Ten
Mar 11 '15 at 4:50
Match fro begin would belocation ~ ^/path/
– Alexey Ten
Mar 11 '15 at 4:51
Well, I'm wrong about "completely wrong", but it's confusing that it uses word "pattern" for prefix string.
– Alexey Ten
Mar 11 '15 at 4:54
add a comment |
I am looking at an nginx location block that has this symbol ^~
before the location block. What does it do? I am having a hard time googling for it.
location ^~ /realestate/
uwsgi_pass 127.0.0.1:2340;
include /etc/nginx/uwsgi_params;
nginx
I am looking at an nginx location block that has this symbol ^~
before the location block. What does it do? I am having a hard time googling for it.
location ^~ /realestate/
uwsgi_pass 127.0.0.1:2340;
include /etc/nginx/uwsgi_params;
nginx
nginx
asked Mar 10 '15 at 21:27
bernie2436bernie2436
216127
216127
2
Sadly, our search engine doesn't process the ^ character either, so it will be hard for future users to find this question. :( The^
symbol is borrowed from regular expressions and is referred to as an anchor, specifically the "beginning of line" anchor. Here is a link to the official documentation, but this page has a table that helps to explain its usage better.
– Andrew B
Mar 10 '15 at 22:01
@AndrewB, last link is wrong completely.^~
means "don't check regexp locations if this location is longest prefix match"
– Alexey Ten
Mar 11 '15 at 4:50
Match fro begin would belocation ~ ^/path/
– Alexey Ten
Mar 11 '15 at 4:51
Well, I'm wrong about "completely wrong", but it's confusing that it uses word "pattern" for prefix string.
– Alexey Ten
Mar 11 '15 at 4:54
add a comment |
2
Sadly, our search engine doesn't process the ^ character either, so it will be hard for future users to find this question. :( The^
symbol is borrowed from regular expressions and is referred to as an anchor, specifically the "beginning of line" anchor. Here is a link to the official documentation, but this page has a table that helps to explain its usage better.
– Andrew B
Mar 10 '15 at 22:01
@AndrewB, last link is wrong completely.^~
means "don't check regexp locations if this location is longest prefix match"
– Alexey Ten
Mar 11 '15 at 4:50
Match fro begin would belocation ~ ^/path/
– Alexey Ten
Mar 11 '15 at 4:51
Well, I'm wrong about "completely wrong", but it's confusing that it uses word "pattern" for prefix string.
– Alexey Ten
Mar 11 '15 at 4:54
2
2
Sadly, our search engine doesn't process the ^ character either, so it will be hard for future users to find this question. :( The
^
symbol is borrowed from regular expressions and is referred to as an anchor, specifically the "beginning of line" anchor. Here is a link to the official documentation, but this page has a table that helps to explain its usage better.– Andrew B
Mar 10 '15 at 22:01
Sadly, our search engine doesn't process the ^ character either, so it will be hard for future users to find this question. :( The
^
symbol is borrowed from regular expressions and is referred to as an anchor, specifically the "beginning of line" anchor. Here is a link to the official documentation, but this page has a table that helps to explain its usage better.– Andrew B
Mar 10 '15 at 22:01
@AndrewB, last link is wrong completely.
^~
means "don't check regexp locations if this location is longest prefix match"– Alexey Ten
Mar 11 '15 at 4:50
@AndrewB, last link is wrong completely.
^~
means "don't check regexp locations if this location is longest prefix match"– Alexey Ten
Mar 11 '15 at 4:50
Match fro begin would be
location ~ ^/path/
– Alexey Ten
Mar 11 '15 at 4:51
Match fro begin would be
location ~ ^/path/
– Alexey Ten
Mar 11 '15 at 4:51
Well, I'm wrong about "completely wrong", but it's confusing that it uses word "pattern" for prefix string.
– Alexey Ten
Mar 11 '15 at 4:54
Well, I'm wrong about "completely wrong", but it's confusing that it uses word "pattern" for prefix string.
– Alexey Ten
Mar 11 '15 at 4:54
add a comment |
2 Answers
2
active
oldest
votes
^~ The defined location url must begin with this syntax
if that syntax is matched, then regular expressions will not be used. So in your case once the folder realestate is found, the search will stop.
But if you know the folder you want to access & do not want to use regex
location = /realestate/ {
may be a faster rule
add a comment |
^ is the start of a match on the uri
~ indicates a regular expression match
/realestate/ without an explicit end will match on a uri beginning with /realestate/ in this case when using a regex match
More explicitly if your intent is to match on
/realestate/ exactly
location = /realestate/ would be a faster more optimized match
If your intent is really something like
location ^~ /realestate/.*
this might be a little more accurate way to represent it
New contributor
1
How is this different from the previous answer?
– RalfFriedl
yesterday
The previous answer seemed inaccurate ^~ indicates a type of match and is not a requirement of matching in general, it is one method of matching. It is unclear referring to a match of a folder when in fact it's a match of part of a request path or uri. So my intent was to provide an accurate clearer answer which does on the surface seem similar. But the other answer could lead to multiple misunderstandings. 1. that the ^~ is required for a match. 2. that it is actually matching on folders versus the request.
– Eric Sobczak
yesterday
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%2f674425%2fwhat-does-location-mean-in-an-nginx-location-block%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
^~ The defined location url must begin with this syntax
if that syntax is matched, then regular expressions will not be used. So in your case once the folder realestate is found, the search will stop.
But if you know the folder you want to access & do not want to use regex
location = /realestate/ {
may be a faster rule
add a comment |
^~ The defined location url must begin with this syntax
if that syntax is matched, then regular expressions will not be used. So in your case once the folder realestate is found, the search will stop.
But if you know the folder you want to access & do not want to use regex
location = /realestate/ {
may be a faster rule
add a comment |
^~ The defined location url must begin with this syntax
if that syntax is matched, then regular expressions will not be used. So in your case once the folder realestate is found, the search will stop.
But if you know the folder you want to access & do not want to use regex
location = /realestate/ {
may be a faster rule
^~ The defined location url must begin with this syntax
if that syntax is matched, then regular expressions will not be used. So in your case once the folder realestate is found, the search will stop.
But if you know the folder you want to access & do not want to use regex
location = /realestate/ {
may be a faster rule
edited Mar 25 '15 at 12:32
answered Mar 25 '15 at 11:02
JonJon
1014
1014
add a comment |
add a comment |
^ is the start of a match on the uri
~ indicates a regular expression match
/realestate/ without an explicit end will match on a uri beginning with /realestate/ in this case when using a regex match
More explicitly if your intent is to match on
/realestate/ exactly
location = /realestate/ would be a faster more optimized match
If your intent is really something like
location ^~ /realestate/.*
this might be a little more accurate way to represent it
New contributor
1
How is this different from the previous answer?
– RalfFriedl
yesterday
The previous answer seemed inaccurate ^~ indicates a type of match and is not a requirement of matching in general, it is one method of matching. It is unclear referring to a match of a folder when in fact it's a match of part of a request path or uri. So my intent was to provide an accurate clearer answer which does on the surface seem similar. But the other answer could lead to multiple misunderstandings. 1. that the ^~ is required for a match. 2. that it is actually matching on folders versus the request.
– Eric Sobczak
yesterday
add a comment |
^ is the start of a match on the uri
~ indicates a regular expression match
/realestate/ without an explicit end will match on a uri beginning with /realestate/ in this case when using a regex match
More explicitly if your intent is to match on
/realestate/ exactly
location = /realestate/ would be a faster more optimized match
If your intent is really something like
location ^~ /realestate/.*
this might be a little more accurate way to represent it
New contributor
1
How is this different from the previous answer?
– RalfFriedl
yesterday
The previous answer seemed inaccurate ^~ indicates a type of match and is not a requirement of matching in general, it is one method of matching. It is unclear referring to a match of a folder when in fact it's a match of part of a request path or uri. So my intent was to provide an accurate clearer answer which does on the surface seem similar. But the other answer could lead to multiple misunderstandings. 1. that the ^~ is required for a match. 2. that it is actually matching on folders versus the request.
– Eric Sobczak
yesterday
add a comment |
^ is the start of a match on the uri
~ indicates a regular expression match
/realestate/ without an explicit end will match on a uri beginning with /realestate/ in this case when using a regex match
More explicitly if your intent is to match on
/realestate/ exactly
location = /realestate/ would be a faster more optimized match
If your intent is really something like
location ^~ /realestate/.*
this might be a little more accurate way to represent it
New contributor
^ is the start of a match on the uri
~ indicates a regular expression match
/realestate/ without an explicit end will match on a uri beginning with /realestate/ in this case when using a regex match
More explicitly if your intent is to match on
/realestate/ exactly
location = /realestate/ would be a faster more optimized match
If your intent is really something like
location ^~ /realestate/.*
this might be a little more accurate way to represent it
New contributor
New contributor
answered yesterday
Eric SobczakEric Sobczak
1
1
New contributor
New contributor
1
How is this different from the previous answer?
– RalfFriedl
yesterday
The previous answer seemed inaccurate ^~ indicates a type of match and is not a requirement of matching in general, it is one method of matching. It is unclear referring to a match of a folder when in fact it's a match of part of a request path or uri. So my intent was to provide an accurate clearer answer which does on the surface seem similar. But the other answer could lead to multiple misunderstandings. 1. that the ^~ is required for a match. 2. that it is actually matching on folders versus the request.
– Eric Sobczak
yesterday
add a comment |
1
How is this different from the previous answer?
– RalfFriedl
yesterday
The previous answer seemed inaccurate ^~ indicates a type of match and is not a requirement of matching in general, it is one method of matching. It is unclear referring to a match of a folder when in fact it's a match of part of a request path or uri. So my intent was to provide an accurate clearer answer which does on the surface seem similar. But the other answer could lead to multiple misunderstandings. 1. that the ^~ is required for a match. 2. that it is actually matching on folders versus the request.
– Eric Sobczak
yesterday
1
1
How is this different from the previous answer?
– RalfFriedl
yesterday
How is this different from the previous answer?
– RalfFriedl
yesterday
The previous answer seemed inaccurate ^~ indicates a type of match and is not a requirement of matching in general, it is one method of matching. It is unclear referring to a match of a folder when in fact it's a match of part of a request path or uri. So my intent was to provide an accurate clearer answer which does on the surface seem similar. But the other answer could lead to multiple misunderstandings. 1. that the ^~ is required for a match. 2. that it is actually matching on folders versus the request.
– Eric Sobczak
yesterday
The previous answer seemed inaccurate ^~ indicates a type of match and is not a requirement of matching in general, it is one method of matching. It is unclear referring to a match of a folder when in fact it's a match of part of a request path or uri. So my intent was to provide an accurate clearer answer which does on the surface seem similar. But the other answer could lead to multiple misunderstandings. 1. that the ^~ is required for a match. 2. that it is actually matching on folders versus the request.
– Eric Sobczak
yesterday
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%2f674425%2fwhat-does-location-mean-in-an-nginx-location-block%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
2
Sadly, our search engine doesn't process the ^ character either, so it will be hard for future users to find this question. :( The
^
symbol is borrowed from regular expressions and is referred to as an anchor, specifically the "beginning of line" anchor. Here is a link to the official documentation, but this page has a table that helps to explain its usage better.– Andrew B
Mar 10 '15 at 22:01
@AndrewB, last link is wrong completely.
^~
means "don't check regexp locations if this location is longest prefix match"– Alexey Ten
Mar 11 '15 at 4:50
Match fro begin would be
location ~ ^/path/
– Alexey Ten
Mar 11 '15 at 4:51
Well, I'm wrong about "completely wrong", but it's confusing that it uses word "pattern" for prefix string.
– Alexey Ten
Mar 11 '15 at 4:54