Nginx редирект для входа

Мой прокси проход проходит в примере:7456/nix/sign_in, но когда я набираю логин и пароль и нажимаю кнопку отправки, сервер не останавливается на примере: 7456 / nix / sign_in и перенаправляет на пример:7456/sign_in.

  server {
    listen 7456;
    charset utf-8;
    server_name example;
    root /home/support/project_test/public;
    passenger_enabled on;
    rails_env development;

    location /nix/ {
        root /home/support/project_nginx/public;
        passenger_base_uri /nix/;
        passenger_enabled on;
        #include proxy_params;
        proxy_pass http://10.77.92.167:7458/;
        #proxy_set_header X-Accel-Redirect;
        proxy_pass_header X-Accel-Redirect;
        proxy_set_header Content-Length 0;
        proxy_set_header Host $host;
        proxy_redirect off;
    }
}
server {
    listen 7458;
    charset utf-8;
    server_name example;
    root /home/support/project_nginx/public;
    passenger_enabled on;
    rails_env development;
}

Как я могу исправить редирект и остаться примером: 7456 / nix / - на прокси проходе.

Я использую Nginx, Passenger и Ruby on Rails.

1 ответ

Решение

Сначала зайдите в environment.rb

ENV['RAILS_RELATIVE_URL_ROOT'] = "/nix/"

Второй config.ru

map '/nix/' do
  run App::Application
end

И следующий nginx.conf

location /nix/ {
   proxy_pass http://example:7458/nix/;
   proxy_set_header Host $host;
}

Тип http://example:7456/nix/sign_in, и вы не получили перенаправление на другую страницу, когда нажали кнопку отправки.

Другие вопросы по тегам