diff options
author | Rémy Coutable <remy@rymai.me> | 2018-05-03 13:10:31 +0300 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2018-05-03 13:10:31 +0300 |
commit | 1c7bab11a021d376f5e1788194e6f9be569b0bc6 (patch) | |
tree | 3ee3cdbd1d3843f6a2a4649a17b6974fb2015178 | |
parent | 0bca017dfb187bfc5424cd73cde43c9dfbbbc175 (diff) | |
parent | 2306e4906013c3f90684722ccc58d3c31bd4437e (diff) |
Merge branch 'blackst0ne-rails5-fix-trusted-proxies' into 'master'
[Rails5] Fix trusted proxies
See merge request gitlab-org/gitlab-ce!18705
-rw-r--r-- | config/initializers/trusted_proxies.rb | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/config/initializers/trusted_proxies.rb b/config/initializers/trusted_proxies.rb index 0c32528311e..ca2eed664ed 100644 --- a/config/initializers/trusted_proxies.rb +++ b/config/initializers/trusted_proxies.rb @@ -22,3 +22,16 @@ end.compact Rails.application.config.action_dispatch.trusted_proxies = ( ['127.0.0.1', '::1'] + gitlab_trusted_proxies) + +# A monkey patch to make trusted proxies work with Rails 5.0. +# Inspired by https://github.com/rails/rails/issues/5223#issuecomment-263778719 +# Remove this monkey patch when upstream is fixed. +if Gitlab.rails5? + module TrustedProxyMonkeyPatch + def ip + @ip ||= (get_header("action_dispatch.remote_ip") || super).to_s + end + end + + ActionDispatch::Request.send(:include, TrustedProxyMonkeyPatch) +end |