如何配置nginx和uwsgi将调用从路径重定向到子域?

sho*_*ujs 2 nginx flask uwsgi

我在uwsgi和nginx上运行一个烧瓶应用程序.他们的网站有两个功能:

  • /admin:用于后端管理
  • /api:休息api

我希望所有api调用都通过子域名:api.mysite.com.

如果我打电话给api,它运行得非常好www.mysite.com/api/v1/cities.

如果我想用这种方式调用api api.mysite.com/v1/cities怎么办?

我怎么能设法做到这一点?

sho*_*ujs 5

我设法通过在nginx conf上设置proxy_pass来使其工作:

server {
    listen 80;
    server_name localhost;
    location / {
        include uwsgi_params;
        uwsgi_pass unix:/tmp/app.sock;
    }
}
server {
    listen 80;
    server_name api.mysite.com;
    location / {
        proxy_pass http://localhost/api/;  
    }
}
Run Code Online (Sandbox Code Playgroud)

仍在考虑它是否是最佳解决方案,是否有任何服务器开销?