resque-web
resque-web copied to clipboard
Relative url path is ignored
We have relative URL path setup for the web server in prod. The links in the resque_web interface are not honoring the relative URL path when the links are clicked in the web. Is there any setting where we can fix it?
I made an alternative project that works under a relative url. Check it out here
What worked for me is:
-
Mount ResqueWeb in
config/routes.rbas follows:require "resque_web" Rails.application.routes.draw do mount ResqueWeb::Engine => "/resque/" root 'resque_web/overview#show' end -
set relative URL root in
config/application.rb:config.relative_url_root = '/resque' -
update Nginx config as follows
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; }
Every link on the resque dashboard is generated with prefixed /resque e.g. /resque/workers points to list of workers i.e. resque_web/workers#index
my rake routes output is:
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