Convert Nginx Conf to use different roots for each locationBlank Page: wordpress on nginx+php-fpmNginx gives 504 Gateway Time-out once moved to livenginx php5-fpm path_info urls and root locationNGINX don't parse .php5 as .phpLaravel 4.1 on nginx routes error 404nginx rewrite throw 404 with last and breaknginx PHP files downloading instead of executingCodeIgniter nginx rewrite rules for i8ln URL'sHow to serve Autodiscover.xml using NginxHow to configure nginx to serve one site from two different document root and using different php depending on URL
Renting a house to a graduate student in my department
Pre-1993 comic in which Wolverine's claws were turned to rubber?
How can I test a shell script in a "safe environment" to avoid harm to my computer?
Thawing Glaciers return to hand interaction
Why did they wait for Quill to arrive?
When do you stop "pushing" a book?
How did Captain Marvel know where to find these characters?
Can a planet still function with a damaged moon?
Does a surprised creature obey the 1st level spell Command?
Ugin's Conjurant vs. un-preventable damage
Probability of taking balls without replacement from a bag question
What can cause an unfrozen indoor copper drain pipe to crack?
How to get MAX value using SOQL when there are more than 50,000 rows
Was Mohammed the most popular first name for boys born in Berlin in 2018?
Are there vaccine ingredients which may not be disclosed ("hidden", "trade secret", or similar)?
Not taking the bishop with the knight, why?
What is the minimum required technology to reanimate someone who has been cryogenically frozen?
Is it a good idea to copy a trader when investing?
Company stopped paying my salary. What are my options?
if i accidentally leaked my schools ip address and someone d doses my school am i at fault
Compactness in normed vector spaces.
Names of the Six Tastes
Why is it wrong to *implement* myself a known, published, widely believed to be secure crypto algorithm?
Gift for mentor after his thesis defense?
Convert Nginx Conf to use different roots for each location
Blank Page: wordpress on nginx+php-fpmNginx gives 504 Gateway Time-out once moved to livenginx php5-fpm path_info urls and root locationNGINX don't parse .php5 as .phpLaravel 4.1 on nginx routes error 404nginx rewrite throw 404 with last and breaknginx PHP files downloading instead of executingCodeIgniter nginx rewrite rules for i8ln URL'sHow to serve Autodiscover.xml using NginxHow to configure nginx to serve one site from two different document root and using different php depending on URL
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
I am trying to modify my Nginx config so that the /tablet & /mobile locations are served from their own root.
I believe i need to add Alias definitions to my locations but not quite sure about the specifics.
server
listen 80 default_server;
# listen [::]:80 default_server ipv6only=on;
root /var/www/htdocs;
index index.php index.html index.htm;
server_name localhost;
location /mobile
if (!-e $request_filename)
rewrite ^/mobile/(.*)$ /mobile/index.php?$args last;
location /tablet
if (!-e $request_filename)
rewrite ^/tablet/(.*)$ /tablet/index.php?$args last;
location /
try_files $uri $uri/ /index.php?$args;
location ~ .php$
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass phpfpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
server
listen 80;
server_name www.domain.com domain.com docker.domain.com ;
root /var/www/htdocs;
index index.php index.html index.htm;
if ($http_x_forwarded_proto != 'https')
return 301 https://$server_name$request_uri;
location /mobile
if (!-e $request_filename)
rewrite ^/mobile/(.*)$ /mobile/index.php?$args last;
location /tablet
if (!-e $request_filename)
rewrite ^/tablet/(.*)$ /tablet/index.php?$args last;
location ~ .php$
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass phpfpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
location /
if ($http_x_forwarded_proto != 'https')
return 301 https://$server_name$request_uri;
try_files $uri $uri/ /index.php?$args;
So I have tried adding the following:
location /test
alias /var/www/htdocs/test;
This correctly serves the files from the specified location, but if I echo server root it shows /var/www/htdocs/.
nginx
add a comment |
I am trying to modify my Nginx config so that the /tablet & /mobile locations are served from their own root.
I believe i need to add Alias definitions to my locations but not quite sure about the specifics.
server
listen 80 default_server;
# listen [::]:80 default_server ipv6only=on;
root /var/www/htdocs;
index index.php index.html index.htm;
server_name localhost;
location /mobile
if (!-e $request_filename)
rewrite ^/mobile/(.*)$ /mobile/index.php?$args last;
location /tablet
if (!-e $request_filename)
rewrite ^/tablet/(.*)$ /tablet/index.php?$args last;
location /
try_files $uri $uri/ /index.php?$args;
location ~ .php$
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass phpfpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
server
listen 80;
server_name www.domain.com domain.com docker.domain.com ;
root /var/www/htdocs;
index index.php index.html index.htm;
if ($http_x_forwarded_proto != 'https')
return 301 https://$server_name$request_uri;
location /mobile
if (!-e $request_filename)
rewrite ^/mobile/(.*)$ /mobile/index.php?$args last;
location /tablet
if (!-e $request_filename)
rewrite ^/tablet/(.*)$ /tablet/index.php?$args last;
location ~ .php$
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass phpfpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
location /
if ($http_x_forwarded_proto != 'https')
return 301 https://$server_name$request_uri;
try_files $uri $uri/ /index.php?$args;
So I have tried adding the following:
location /test
alias /var/www/htdocs/test;
This correctly serves the files from the specified location, but if I echo server root it shows /var/www/htdocs/.
nginx
With alias nginx basically "drops" the location value (in this case test) when looking for the path to serve files from. So your correct root, is /var/www/htdocs/ for the /test location. You can't set root to be /var/www/htdocs/test in the /test location and then serve files from /var/www/htdocs/test. You would have to move the files to /var/www/htdocs/test/test/ to do that
– Drifter104
Apr 30 at 8:36
Not related to your actual question, but for best practices, instead of usingif (!-e $request_filename)
, usetry_files $uri /mobile/index.php?$args;
in your/tablet
//mobile
location blocks.
– Tero Kilkanen
May 1 at 12:16
add a comment |
I am trying to modify my Nginx config so that the /tablet & /mobile locations are served from their own root.
I believe i need to add Alias definitions to my locations but not quite sure about the specifics.
server
listen 80 default_server;
# listen [::]:80 default_server ipv6only=on;
root /var/www/htdocs;
index index.php index.html index.htm;
server_name localhost;
location /mobile
if (!-e $request_filename)
rewrite ^/mobile/(.*)$ /mobile/index.php?$args last;
location /tablet
if (!-e $request_filename)
rewrite ^/tablet/(.*)$ /tablet/index.php?$args last;
location /
try_files $uri $uri/ /index.php?$args;
location ~ .php$
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass phpfpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
server
listen 80;
server_name www.domain.com domain.com docker.domain.com ;
root /var/www/htdocs;
index index.php index.html index.htm;
if ($http_x_forwarded_proto != 'https')
return 301 https://$server_name$request_uri;
location /mobile
if (!-e $request_filename)
rewrite ^/mobile/(.*)$ /mobile/index.php?$args last;
location /tablet
if (!-e $request_filename)
rewrite ^/tablet/(.*)$ /tablet/index.php?$args last;
location ~ .php$
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass phpfpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
location /
if ($http_x_forwarded_proto != 'https')
return 301 https://$server_name$request_uri;
try_files $uri $uri/ /index.php?$args;
So I have tried adding the following:
location /test
alias /var/www/htdocs/test;
This correctly serves the files from the specified location, but if I echo server root it shows /var/www/htdocs/.
nginx
I am trying to modify my Nginx config so that the /tablet & /mobile locations are served from their own root.
I believe i need to add Alias definitions to my locations but not quite sure about the specifics.
server
listen 80 default_server;
# listen [::]:80 default_server ipv6only=on;
root /var/www/htdocs;
index index.php index.html index.htm;
server_name localhost;
location /mobile
if (!-e $request_filename)
rewrite ^/mobile/(.*)$ /mobile/index.php?$args last;
location /tablet
if (!-e $request_filename)
rewrite ^/tablet/(.*)$ /tablet/index.php?$args last;
location /
try_files $uri $uri/ /index.php?$args;
location ~ .php$
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass phpfpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
server
listen 80;
server_name www.domain.com domain.com docker.domain.com ;
root /var/www/htdocs;
index index.php index.html index.htm;
if ($http_x_forwarded_proto != 'https')
return 301 https://$server_name$request_uri;
location /mobile
if (!-e $request_filename)
rewrite ^/mobile/(.*)$ /mobile/index.php?$args last;
location /tablet
if (!-e $request_filename)
rewrite ^/tablet/(.*)$ /tablet/index.php?$args last;
location ~ .php$
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass phpfpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
location /
if ($http_x_forwarded_proto != 'https')
return 301 https://$server_name$request_uri;
try_files $uri $uri/ /index.php?$args;
So I have tried adding the following:
location /test
alias /var/www/htdocs/test;
This correctly serves the files from the specified location, but if I echo server root it shows /var/www/htdocs/.
nginx
nginx
asked Apr 30 at 8:19
JamesJames
101
101
With alias nginx basically "drops" the location value (in this case test) when looking for the path to serve files from. So your correct root, is /var/www/htdocs/ for the /test location. You can't set root to be /var/www/htdocs/test in the /test location and then serve files from /var/www/htdocs/test. You would have to move the files to /var/www/htdocs/test/test/ to do that
– Drifter104
Apr 30 at 8:36
Not related to your actual question, but for best practices, instead of usingif (!-e $request_filename)
, usetry_files $uri /mobile/index.php?$args;
in your/tablet
//mobile
location blocks.
– Tero Kilkanen
May 1 at 12:16
add a comment |
With alias nginx basically "drops" the location value (in this case test) when looking for the path to serve files from. So your correct root, is /var/www/htdocs/ for the /test location. You can't set root to be /var/www/htdocs/test in the /test location and then serve files from /var/www/htdocs/test. You would have to move the files to /var/www/htdocs/test/test/ to do that
– Drifter104
Apr 30 at 8:36
Not related to your actual question, but for best practices, instead of usingif (!-e $request_filename)
, usetry_files $uri /mobile/index.php?$args;
in your/tablet
//mobile
location blocks.
– Tero Kilkanen
May 1 at 12:16
With alias nginx basically "drops" the location value (in this case test) when looking for the path to serve files from. So your correct root, is /var/www/htdocs/ for the /test location. You can't set root to be /var/www/htdocs/test in the /test location and then serve files from /var/www/htdocs/test. You would have to move the files to /var/www/htdocs/test/test/ to do that
– Drifter104
Apr 30 at 8:36
With alias nginx basically "drops" the location value (in this case test) when looking for the path to serve files from. So your correct root, is /var/www/htdocs/ for the /test location. You can't set root to be /var/www/htdocs/test in the /test location and then serve files from /var/www/htdocs/test. You would have to move the files to /var/www/htdocs/test/test/ to do that
– Drifter104
Apr 30 at 8:36
Not related to your actual question, but for best practices, instead of using
if (!-e $request_filename)
, use try_files $uri /mobile/index.php?$args;
in your /tablet
/ /mobile
location blocks.– Tero Kilkanen
May 1 at 12:16
Not related to your actual question, but for best practices, instead of using
if (!-e $request_filename)
, use try_files $uri /mobile/index.php?$args;
in your /tablet
/ /mobile
location blocks.– Tero Kilkanen
May 1 at 12:16
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
);
);
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%2f965233%2fconvert-nginx-conf-to-use-different-roots-for-each-location%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
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%2f965233%2fconvert-nginx-conf-to-use-different-roots-for-each-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
With alias nginx basically "drops" the location value (in this case test) when looking for the path to serve files from. So your correct root, is /var/www/htdocs/ for the /test location. You can't set root to be /var/www/htdocs/test in the /test location and then serve files from /var/www/htdocs/test. You would have to move the files to /var/www/htdocs/test/test/ to do that
– Drifter104
Apr 30 at 8:36
Not related to your actual question, but for best practices, instead of using
if (!-e $request_filename)
, usetry_files $uri /mobile/index.php?$args;
in your/tablet
//mobile
location blocks.– Tero Kilkanen
May 1 at 12:16