Ruby on rails 当配置相对url根目录时,重新设置web链接会断开
我在staging/prod环境中使用for应用程序部署到子目录。我最近开始使用for active jobs,并实现了一个用于查看resque作业队列的前端。当用户点击链接时,resque web主页上的所有链接都不遵守相对url路径Ruby on rails 当配置相对url根目录时,重新设置web链接会断开,ruby-on-rails,ruby,resque,rails-activejob,Ruby On Rails,Ruby,Resque,Rails Activejob,我在staging/prod环境中使用for应用程序部署到子目录。我最近开始使用for active jobs,并实现了一个用于查看resque作业队列的前端。当用户点击链接时,resque web主页上的所有链接都不遵守相对url路径 config.action_controller.relative_url_root = /metric 当我们点击resque网站上的working jobs链接时。它呈现的是/resque_web/working,而不是/metric/resque_web
config.action_controller.relative_url_root = /metric
当我们点击resque网站上的working jobs链接时。它呈现的是/resque_web/working
,而不是/metric/resque_web/working
,这会导致链接中断
有什么想法吗?对我有用的是:
config/routes.rb
中装载ResqueWeb,如下所示:
require "resque_web"
Rails.application.routes.draw do
mount ResqueWeb::Engine => "/resque/"
root 'resque_web/overview#show'
end
config/application.rb
中设置相对URL根目录:
config.relative_url_root = '/resque'
location ~ ^/resque/(.*|$) {
alias /home/ravi/ws/ror/resque-web/public$1;
passenger_app_root /home/ravi/ws/ror/resque-web;
passenger_document_root /home/ravi/ws/ror/resque-web/public;
passenger_enabled on;
passenger_app_env development;
}
/resque/workers
指向工作人员列表,即resque\u web/workers\index
我的rake routes输出是:
Prefix Verb URI Pattern Controller#Action
resque_web /resque ResqueWeb::Engine
root GET / resque_web/overview#show
Routes for ResqueWeb::Plugins::ResqueScheduler::Engine:
schedules GET /schedule(.:format) resque_web/plugins/resque_scheduler/schedules#index
requeue POST /schedule/requeue(.:format) resque_web/plugins/resque_scheduler/schedules#requeue
requeue_with_params POST /schedule/requeue_with_params(.:format) resque_web/plugins/resque_scheduler/schedules#requeue_with_params
schedule DELETE /schedule(.:format) resque_web/plugins/resque_scheduler/schedules#destroy
delayed GET /delayed(.:format) resque_web/plugins/resque_scheduler/delayed#index
delayed_job_class GET /delayed/jobs/:klass(.:format) resque_web/plugins/resque_scheduler/delayed#jobs_klass
delayed_search POST /delayed/search(.:format) resque_web/plugins/resque_scheduler/delayed#search
timestamp GET /delayed/:timestamp(.:format) resque_web/plugins/resque_scheduler/delayed#timestamp
queue_now POST /delayed/queue_now(.:format) resque_web/plugins/resque_scheduler/delayed#queue_now
cancel_now POST /delayed/cancel_now(.:format) resque_web/plugins/resque_scheduler/delayed#cancel_now
clear POST /delayed/clear(.:format) resque_web/plugins/resque_scheduler/delayed#clear
Routes for ResqueWeb::Engine:
resque_web_plugins_resque_scheduler /scheduler ResqueWeb::Plugins::ResqueScheduler::Engine
overview GET /overview(.:format) resque_web/overview#show
working_index GET /working(.:format) resque_web/working#index
clear_queue PUT /queues/:id/clear(.:format) resque_web/queues#clear {:id=>/[^\/]+/}
queues GET /queues(.:format) resque_web/queues#index
queue GET /queues/:id(.:format) resque_web/queues#show {:id=>/[^\/]+/}
DELETE /queues/:id(.:format) resque_web/queues#destroy {:id=>/[^\/]+/}
workers GET /workers(.:format) resque_web/workers#index
worker GET /workers/:id(.:format) resque_web/workers#show {:id=>/[^\/]+/}
retry_failure PUT /failures/:id/retry(.:format) resque_web/failures#retry
retry_all_failures PUT /failures/retry_all(.:format) resque_web/failures#retry_all
destroy_all_failures DELETE /failures/destroy_all(.:format) resque_web/failures#destroy_all
failures GET /failures(.:format) resque_web/failures#index
failure GET /failures/:id(.:format) resque_web/failures#show
DELETE /failures/:id(.:format) resque_web/failures#destroy
stats GET /stats(.:format) resque_web/stats#index
stats_resque GET /stats/resque(.:format) resque_web/stats#resque
stats_redis GET /stats/redis(.:format) resque_web/stats#redis
stats_keys GET /stats/keys(.:format) resque_web/stats#keys
keys_statistic GET /stats/keys/:id(.:format) resque_web/stats#keys {:id=>/[^\/]+/}
root GET / resque_web/overview#show
你找到解决办法了吗?