在nginx中重新定位应用程序

我有我的应用程序运行在二级域(例如,example.com)。 这是位于启用网站的文件:

upstream unicorn { server unix:/tmp/unicorn.appname.sock fail_timeout=0; } server { server_name example.com, www.example.com; listen 00.000.000.000; root /home/deployer/apps/appname/current/public; location ^~ /assets/ { gzip_static on; expires max; add_header Cache-Control public; } try_files $uri/index.html $uri @unicorn; location @unicorn { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_pass http://unicorn; } error_page 500 502 503 504 /500.html; client_max_body_size 4G; keepalive_timeout 10; } 

它工作正常。
现在我想将应用程序移动到admin.example.com/applicationname

我可以简单地将server_name更改为admin.example.com/applicationname ,还是以其他方式完成?

现在我想将应用程序移动到admin.example.com/applicationname

为了清楚起见 – 哪里?

我可以简单地将server_name更改为admin.example.com/applicationname,还是以其他方式完成?

你可以,但它不会工作 – 服务器名称应该只包含URI的域名部分。

我可以假设,你真正要问的是将应用程序从“/”移动到“/子文件夹”,在这种情况下,有一些特殊的文档部分 :«…

如果使用URI指定proxy_pass,则在将请求传递给服务器时,与该位置匹配的标准化请求URI的一部分会被指令中指定的URIreplace:

 location /name/ { proxy_pass http://127.0.0.1/remote/; } 

…»