使用Pyramid#x2B在同一个域上为两个单独的站点提供服务;Nginx+;Uwsgi

使用Pyramid#x2B在同一个域上为两个单独的站点提供服务;Nginx+;Uwsgi,nginx,google-analytics,pyramid,Nginx,Google Analytics,Pyramid,我有两个版本的网站,我想运行测试,看看哪些总体布局用户互动更多。我将使用google analytics运行这些测试,因此我认为我需要一个站点布局作为另一个的子uri进行访问。例如,如果用户访问www.mysamplesite.com,他们将看到该站点的一个版本,如果他们访问www.mysamplesite.com/grid,他们将看到另一个版本 使用Pyramid+Nginx+uwsgi是否可能实现这一点?如果是这样的话,有没有关于我将如何处理这件事的建议(我已经尝试了很多事情,但都没有结果)

我有两个版本的网站,我想运行测试,看看哪些总体布局用户互动更多。我将使用google analytics运行这些测试,因此我认为我需要一个站点布局作为另一个的子uri进行访问。例如,如果用户访问www.mysamplesite.com,他们将看到该站点的一个版本,如果他们访问www.mysamplesite.com/grid,他们将看到另一个版本

使用Pyramid+Nginx+uwsgi是否可能实现这一点?如果是这样的话,有没有关于我将如何处理这件事的建议(我已经尝试了很多事情,但都没有结果)?我是否只需要为nginx添加一个新的.conf文件,该文件侦听不同的端口,然后从标准服务器配置中“转发”该端口。换句话说,如果对于我的常规站点配置,我有如下内容:

server{
    listen: 80;
    server_name www.mysamplesite.com;

    location /grid {
        uwsgi_pass 127.0.0.1:81;
    }

 }
然后创建另一个配置文件,如:

server{
    listen: 81;
    server_name www.mysamplesite.com;


    location /grid{
        include uwsgi_params;
        uwsgi_pass unix:///blah
}

这样的工作是否应该使两个站点版本得到正确的服务?显然,这些不是完整的配置文件,只是想法。我尝试了许多不同的配置,感觉要么这是不可能的,要么我在做一些愚蠢的事情。谢谢你的指点,因为我对这些东西有点陌生。

这些网站的代码库是一样的吗?? 如果站点的代码库相同,您只需将多个url
/grid
映射到所需的视图即可

如果代码基础不同,如果我没有错的话,您可以在端口80上通过类似的方式为它们提供服务

    server{
        listen: 80;
        server_name www.mysamplesite.com;

        location / {
            root /path/to/your/project/dir;
            include uwsgi_params;
            uwsgi_pass /location/to/your/uwsgi/socket;  #or if your are using http-socket put that instead
        }            
        location /grid{
            root /path/to/your/project/dir2;
            include uwsgi_params;
            uwsgi_pass /location/to/your/uwsgi/socket2;  #or if your are using http-socket put that instead
        }
    }

谢谢你,小悟空。代码库在很大程度上是不同的,以至于views方法对我来说不起作用。今天下午下班后,我将修改您的配置建议,看看是否有效。再次感谢您抽出时间。