[英]Recaptcha rails 5 error
我在重新生產時無法識別出secrets.yml中的密鑰時遇到了錯誤。 在開發中,一切正常!
我能夠使用capistrano和nginx成功上傳我的網站,將recaptcha密鑰放置在secrets.yml中,但是在rails日志中出現以下錯誤。
[70624ace-d7c2-41d4-a312-81e558237559] app/views/contacts/_new.html.erb:1:in `_app_views_contacts__new_html_erb___113748072819217608_34958780'
[70624ace-d7c2-41d4-a312-81e558237559] app/views/welcome/index.html.erb:97:in `_app_views_welcome_index_html_erb__2483501284442413835_31069860'
I, [2018-02-13T15:06:06.655443 #23369] INFO -- : [1abb6e09-8ebd-41a3-ad0c-ea88749d804f] Started GET "/" for 66.249.70.22 at 2018-02-13 15:06:06 +0000
I, [2018-02-13T15:06:06.656262 #23369] INFO -- : [1abb6e09-8ebd-41a3-ad0c-ea88749d804f] Processing by WelcomeController#index as HTML
I, [2018-02-13T15:06:06.657082 #23369] INFO -- : [1abb6e09-8ebd-41a3-ad0c-ea88749d804f] Rendering welcome/index.html.erb within layouts/application
I, [2018-02-13T15:06:06.666156 #23369] INFO -- : [1abb6e09-8ebd-41a3-ad0c-ea88749d804f] Rendered contacts/_new.html.erb (8.3ms)
I, [2018-02-13T15:06:06.666316 #23369] INFO -- : [1abb6e09-8ebd-41a3-ad0c-ea88749d804f] Rendered welcome/index.html.erb within layouts/application (9.1ms)
I, [2018-02-13T15:06:06.666485 #23369] INFO -- : [1abb6e09-8ebd-41a3-ad0c-ea88749d804f] Completed 401 Unauthorized in 10ms
F, [2018-02-13T15:06:06.667938 #23369] FATAL -- : [1abb6e09-8ebd-41a3-ad0c-ea88749d804f]
F, [2018-02-13T15:06:06.668014 #23369] FATAL -- : [1abb6e09-8ebd-41a3-ad0c-ea88749d804f] ActionView::Template::Error (No site key specified.):
F, [2018-02-13T15:06:06.668157 #23369] FATAL -- : [1abb6e09-8ebd-41a3-ad0c-ea88749d804f] 9:
我正在嘗試遵循本教程https://github.com/ambethia/recaptcha ,但是它沒有提供有關將密鑰投入生產的詳細信息。
我嘗試了很多事情,例如在鍵之前添加export
,將它們放置在不同的文件中,以及檢查secrets.yml是否存在語法錯誤。 我還確保我使用的是RECAPTHCA_SITE_KEY
而不是RECAPTCHA_PUBLIC_KEY
。
另外,我已經將我的域放置在recaptcha的站點中。
如果您能幫助我解決問題並提供為什么出現錯誤的解釋,我們將不勝感激。
這是我在生產中的secrets.yml:
production:
secret_key_base: ...SECRET_KEY...
RECAPTCHA_SITE_KEY: "...SITE_KEY..."
RECAPTCHA_PRIVATE_KEY: "...PRIVATE_KEY..."
謝謝!
您需要配置的reCAPTCHA拉從您的鑰匙secrets.yml
通過添加一個初始化文件, config/initializers/recaptcha.rb
:
# config/initializers/recaptcha.rb
Recaptcha.configure do |config|
config.site_key = Rails.application.secrets[:RECAPTCHA_SITE_KEY]
config.secret_key = Rails.application.secrets[:RECAPTCHA_PRIVATE_KEY]
# Uncomment the following line if you are using a proxy server:
# config.proxy = 'http://myproxy.com.au:8080'
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.