2013-05-22 2 views
1

Я пытаюсь получить Basic Authentification работать с Rails 3.2 Nginx и ЕдинорогомRails 3.2 Nginx Unicorn Basic Authentification

Конфигурация работает для размещения моего сайта. Я использовал базовую аутентификацию Rails в контроллере, но во время тестирования мне приходится сталкиваться с множеством проблем. Файл .htpasswd также работает, я могу ограничить доступ к статическому сайту.

В месте конфигурации я попытался

location/
location /home/deployer/apps/rails/current/public 
location /home/deployer/apps/rails/current/ 

Любые идеи?

Это мой конфиг:

upstream unicorn { 
    server unix:/tmp/unicorn.blog.sock fail_timeout=0; 
} 

server { 
    listen 80 default deferred; 
    server_name railsserver; 
    root /home/deployer/apps/rails/current/public; 

    location/{ 
    auth_basic "Restricted"; 
    auth_basic_user_file /var/www/prototyp/.htpasswd; 
    } 

    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; 
} 

Я попробовал его с этой конфигурации сейчас, но он не работает

server { 
    listen 80 default deferred; 
    server_name rails.com; 
    root /home/deployer/apps/rails/current/public; 

    location ^~ /assets/ { 
    gzip_static on; 
    expires max; 
    add_header Cache-Control public; 
    } 

    try_files $uri/index.html $uri /; 

    location/{ 
    auth_basic "Restricted"; 
    auth_basic_user_file /var/www/prototyp/.htpasswd; 
    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; 
} 

ответ

2

ли это так, чтобы заставить его работать:

location/{ 
    auth_basic "Restricted"; 
    auth_basic_user_file /var/www/prototyp/.htpasswd; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_set_header Host $http_host; 
    proxy_redirect off; 
    proxy_pass http://unicorn; 
} 

Вам не нужен адрес @unicorn

+0

Я пробовал его с этой конфигурацией, но он тоже не работает. Посмотрите в мое сообщение о конфигурации, которую я использовал. –

Смежные вопросы