पर नहीं, मैं ऑनलाइन सब कुछ ढूंढने की कोशिश कर रहा हूं, और कुछ भी काम नहीं कर रहा है। आशा है कि कुछ ताजा आंखें इस मुद्दे को देखेंगे। यह एक्शनकेबल का उपयोग करने वाला मेरा पहला समय है, और सबकुछ स्थानीय रूप से महान काम करता है, लेकिन जब उसकेोकू को दबाया जाता है।एक्शन केबल स्थानीय रूप से सदस्यता ले रहा है, लेकिन Heroku
[ActionCable] [[email protected]] MsgsChannel is streaming from msg_channel_34
और जब एक संदेश भेजने, मैं देख पा रहे हैं [ActionCable] Broadcasting to msg_channel_34:
लेकिन वे नहीं जोड़ रहे है, जो मेरा अनुमान है कि इसका मतलब है कि received
विधि तक पहुँचा नहीं जा रहा है: अपने लॉग मेरी डेव सर्वर की तरह किसी भी actioncable सदस्यता नहीं दिखा /बुलाया?
मैं उसके पड़ोस के लॉग पर ध्यान देता हूं यह कहता है कि Listening on tcp://0.0.0.0:5000
जहां देव यह स्थानीयहोस्ट पर सुन रहा है: 3000। क्या मुझे किसी भी तरह से अपने heroku ऐप की तरफ इशारा करना चाहिए?
Procfile:
यहाँ प्रासंगिक विन्यास फाइल कर रहे हैं
web: bundle exec puma -p 5000 ./config.ru
actioncable: bundle exec puma -p 28080 cable/config.ru
redis: redis-server
*** नीचे टिप्पणी के लिए धन्यवाद, मैं भी कोशिश कर रहा हूँ। अभी भी काम नहीं कर रहा है, लेकिन मैं देख सकता हूं कि जिस पोर्ट को यह सुन रहा है वह बदल रहा है, मुझे विश्वास है कि कॉन्फ़िगरेशन के साथ इसका कुछ संबंध है? :
web: bundle exec puma -p $PORT ./config.ru
actioncable: bundle exec puma -p $PORT cable/config.ru
redis: redis-server
/cable/config.ru
require ::File.expand_path('../../config/environment', __FILE__)
Rails.application.eager_load!
ActionCable.server.config.allowed_request_origins = ["http://localhost:3000"]
run ActionCable.server
config/वातावरण/development.rb
config.action_cable.allowed_request_origins = ['localhost:3000']
config.action_cable.url = "ws://localhost:3000/cable"
config/वातावरण/production.rb
config.web_socket_server_url = "wss://app-name.herokuapp.com/cable"
config.action_cable.allowed_request_origins = ['https://app-name.herokuapp.com', 'http://app-name.herokuapp.com']
config /cable.yml
local: &local
adapter: async
:url: redis://localhost:6379
:host: localhost
:port: 6379
:timeout: 1
:inline: true
development: *local
test: *local
production:
:url: redis:<%= ENV["REDISTOGO_URL"] %>
adapter: redis
<%= ENV["REDISTOGO_URL"] %>
निर्धारित करते हैं, Heroku config
routes.rb
mount ActionCable.server => '/cable'
क्यों इस देव पर काम कर रहा है, लेकिन Heroku पर नहीं? मैं घंटों के लिए पढ़ रहा हूं, लेकिन इसे समझ नहीं सकता। धन्यवाद!!
अद्यतन: Heroku लॉग्स:
2017-01-25T20:32:57.329656+00:00 heroku[web.1]: Starting process with command `bundle exec puma -p 5000 ./config.ru`
2017-01-25T20:32:59.600554+00:00 app[web.1]: Puma starting in single mode...
2017-01-25T20:32:59.600574+00:00 app[web.1]: * Version 3.6.2 (ruby 2.3.1-p112), codename: Sleepy Sunday Serenity
2017-01-25T20:32:59.600575+00:00 app[web.1]: * Min threads: 0, max threads: 16
2017-01-25T20:32:59.600577+00:00 app[web.1]: * Environment: production
2017-01-25T20:33:02.375128+00:00 app[web.1]: profile controller
2017-01-25T20:33:02.588653+00:00 app[web.1]: Use Ctrl-C to stop
2017-01-25T20:33:02.588446+00:00 app[web.1]: * Listening on tcp://0.0.0.0:5000
2017-01-25T20:33:17.681469+00:00 heroku[web.1]: Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch
2017-01-25T20:33:17.681469+00:00 heroku[web.1]: Stopping process with SIGKILL
2017-01-25T20:33:17.862118+00:00 heroku[web.1]: Process exited with status 137
2017-01-25T20:33:57.501746+00:00 heroku[web.1]: Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch
2017-01-25T20:33:57.501908+00:00 heroku[web.1]: Stopping process with SIGKILL
2017-01-25T20:33:57.630071+00:00 heroku[web.1]: Process exited with status 137
2017-01-25T20:33:57.642753+00:00 heroku[web.1]: State changed from starting to crashed
आप एक समाधान अभी तक मिला? –
@ कोडिंग सक्रिय हाँ - मैंने – gwalshington