2017-02-04 17 views
2

nginxルートが/から/apiまでのRailsサーバーがあり、rails_admin gemがインストールされています。私は/api/adminで管理パネルにアクセスできますが、管理ページに表示されているすべてのモデルは/admin/:modelにリンクしています。代わりに/api/admin/:modelにリンクする方法を見つけることができないようです。NGINXサーバー上のRailsアプリケーション、rails_admin gemのルートを変更したい

私はapplication.rbで次のように設定している:

config.relative_url_root = "/api" 
config.action_controller.relative_url_root = "/api" 
ENV['RAILS_RELATIVE_URL_ROOT'] = "/api" 
ENV['ROOT_URL'] = "/api" 

をしかし、管理者ページへのリンクは変更されていません。

私は名前空間の下にrails_adminを持っているroutes.rbを変更する場合、問題が修正されていません:管理者ページは現在api/api/adminになり、リンクがapi/admin/:modelに行くが、ルートと、それは代わりにapi/api/admin/:modelが必要です。

どうすればこの問題を解決できますか?

答えて

0

更新:rails_adminだけでなく、レール全体のアプリケーションに実際に/apiを追加する場合は、この回答が役に立ちます。

application.rbにこれらのコンフィグレーションは必要ありません。

server { 
    listen 80 default_server; 
    server_name www.mydomain.com; 
    root /var/www/AppName/current/client/dist; 
    error_page 404 =200 /index.html; 
    location ~ ^/api(/.*|$) { 
    alias /var/www/AppName/current/public$1; # <-- be sure to point to 'public'! 
    passenger_base_uri /api; 
    passenger_app_root /var/www/AppName/current; 
    passenger_document_root /var/www/AppName/current/public; 
    passenger_enabled on; 
    passenger_app_env production; 
    } 
} 

P.S.:https://www.phusionpassenger.com/library/deploy/nginx/deploy/ruby/

ここに私のconfigsの例です:このドキュメントを読みますerror_page 404 =200 /index.html;の説明はこちらです - Angular 2.0 router not working on reloading the browser

関連する問題