如何设置nginx在同一域上使用静态和动态页面?

时间:2018-07-15 23:32:41

标签: ruby-on-rails-4 nginx deployment puma

我有一个Ruby on Rails应用程序,使用Nginx Web服务器和HTTPS在特定域(例如https://testing.com)中成功运行。

现在,我购买了目标网页模板(仅HTML和JS),并且需要在同一域中进行设置。

更具体地说,我需要的是:

  1. https://testing.com/->呈现目标网页模板
  2. https://testing.com/ *->呈现RoR应用程序

据我对Nginx的配置了解不多,这是我的nginx当前配置:

upstream app {
    # Path to Puma SOCK file, as defined previously
    server unix:/var/www/poseidon/tmp/sockets/puma.sock fail_timeout=0;
}

server {
    listen 80 default_server;
    listen [::]:80 default_server;
    server_name testing.com www.testing.com;
    return 301 https://$server_name$request_uri;
}

server {
    # SSL configuration

    listen 443 ssl default_server;
    listen [::]:443 ssl default_server;
    include snippets/ssl-testing.com.conf;
    include snippets/ssl-params.conf;

    server_name testing.com;

    root /var/www/poseidon/public;

    try_files $uri/index.html $uri @app;

    location @app {
        proxy_pass http://app;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Ssl on; # Optional
        proxy_set_header X-Forwarded-Port $server_port;
        proxy_set_header X-Forwarded-Host $host;
    }

    error_page 500 502 503 504 /500.html;
    client_max_body_size 4G;
    keepalive_timeout 10;

    location ~ /.well-known {
        allow all;
    }
}

我上传了登录页面nginx的配置,并尝试了类似的方法,但没有成功:

location /* {
    root /var/www/landingtesting.com;
}

任何帮助将不胜感激!

0 个答案:

没有答案