#4036 - photos#show (ActionController::Redirecting::UnsafeRedirectError) "Unsafe redirect

An ActionController::Redirecting::UnsafeRedirectError occurred in photos#show:

 Unsafe redirect to "https://tvtqbqkadeuxffsywsbn.s3.us-west-2.amazonaws.com/production/3734.jpeg?X-Amz-Algorithm=AWS4...", pass allow_other_host: true to redirect anyway.
 app/controllers/concerns/turbo/redirection.rb:9:in `redirect_to'


-------------------------------
Request:
-------------------------------

 * URL        : https://www.bikelink.org/photos/3734
 * HTTP Method: GET
 * IP address : 174.249.144.147
 * Parameters : {"controller"=>"photos", "action"=>"show", "id"=>"3734"}
 * Timestamp  : 2025-03-19 18:58:28 UTC
 * Server : www-11.internal.bikelink.org
   * Rails root : /var/www/bikelink
 * Process: 1319779

-------------------------------
Session:
-------------------------------

 * session id: [FILTERED]
 * data: {"session_id"=>"116f73ed88e636c2f9278120df4f56af",
  "warden.user.person.key"=>[[8017], "a1N-gy-GwZZ2YyBuzwYT"],
  "_csrf_token"=>"219-5iFBZfKJnlnB3o48cyxNbqY0_HfRJeS-ypZhy7Q",
  "params_for_filter"=>
   {"filter_by_location"=>nil,
    "filter_by_owner"=>nil,
    "filter_by_state"=>2,
    "filter_by_priority"=>nil}}

-------------------------------
Environment:
-------------------------------

 * GATEWAY_INTERFACE                                       : CGI/1.2
   * HTTP_ACCEPT                                             : text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
   * HTTP_ACCEPT_ENCODING                                    : gzip, deflate, br, zstd
   * HTTP_ACCEPT_LANGUAGE                                    : en-US,en;q=0.9
   * HTTP_CONNECTION                                         : close
   * HTTP_COOKIE                                             : _ga=GA1.1.591705528.1728089262; __utmz=136922275.1728412683.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utma=136922275.591705528.1728089262.1738795497.1738805397.196; _bikelink_session=73sFqAJcD9Qd%2FbbRM8cm8khscS6hVrdo2aFcaEF7Om4iT9ljUqqfPkFj5MQvyFM%2FWT1JoDBtTOVkN7%2BLjLI1efxFuy%2FoAnW%2BcTjXGdKwIsoNVCXZdYIUbLi%2BOvT8AmPTPGqh5iGBgGG5LD0k37TB5n3Pcj2EZEErdFG1H55xW2VxTQtZr04xUPzISjnmsB2%2BXvTGhBvqCrXG9%2Bn3jWs5pn5oPk2dp6LpnyD3UvUfEoh1zM%2BIeCsuGDsfYPs%2Fv7dylj1N3WwW6QC1S%2Bh86QUf5S4gjYK%2BtiddMtBmpgg%2BGnR7QX90VPsvJTwBfeVX3AoXQcM0aE0NxcvWBdX0AFiMiNSWyimpKTp7Oei001Bd265%2FqK9ZHjFGO5gwenZ1cdl9%2FdM7edXsthC96H5D2oBbMt30dJMU7KhkleTz3a%2F3qTWGc4t%2FOxWXTdg%2Bn%2BDR2H3ctom0f%2FG4KXvN4qdn0rEIxyxgWz2QFnpC8DfEJgZqnP%2F5bfsZo0STeHh0a%2BksvV%2BaD%2BTL%2FbuXyeF7Qft3ajAuIkD2e1VIXIKzZ%2BEchKIK4lWzQhE1QQYVz9DU4u7AID54vG5FaSYieMIb%2B5gghDZwG6Q%3D--jyEY44AzrnSh6I%2B3--RpfeoE7hNpCgrW3ABXOntw%3D%3D; _ga_5XJXN3VELE=GS1.1.1742410594.375.1.1742410694.0.0.0
   * HTTP_HOST                                               : www.bikelink.org
   * HTTP_PRIORITY                                           : u=0, i
   * HTTP_REFERER                                            : https://www.bikelink.org/trouble_tickets/27603
   * HTTP_SEC_CH_UA                                          : "Chromium";v="134", "Not:A-Brand";v="24", "Google Chrome";v="134"
   * HTTP_SEC_CH_UA_MOBILE                                   : ?1
   * HTTP_SEC_CH_UA_PLATFORM                                 : "Android"
   * HTTP_SEC_FETCH_DEST                                     : document
   * HTTP_SEC_FETCH_MODE                                     : navigate
   * HTTP_SEC_FETCH_SITE                                     : same-origin
   * HTTP_SEC_FETCH_USER                                     : ?1
   * HTTP_UPGRADE_INSECURE_REQUESTS                          : 1
   * HTTP_USER_AGENT                                         : Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Mobile Safari/537.36
   * HTTP_VERSION                                            : HTTP/1.0
   * HTTP_X_AMZN_TRACE_ID                                    : Root=1-67db13d4-75b91eac27107408186450c3
   * HTTP_X_FORWARDED_FOR                                    : 174.249.144.147, 174.249.144.147
   * HTTP_X_FORWARDED_PORT                                   : 443
   * HTTP_X_FORWARDED_PROTO                                  : https
   * ORIGINAL_FULLPATH                                       : /photos/3734
   * ORIGINAL_SCRIPT_NAME                                    :
   * PATH_INFO                                               : /photos/3734
   * QUERY_STRING                                            :
   * REMOTE_ADDR                                             : 127.0.0.1
   * REQUEST_METHOD                                          : GET
   * REQUEST_PATH                                            : /photos/3734
   * REQUEST_URI                                             : /photos/3734
   * ROUTES_13540_SCRIPT_NAME                                :
   * SCRIPT_NAME                                             :
   * SERVER_NAME                                             : www.bikelink.org
   * SERVER_PORT                                             : 443
   * SERVER_PROTOCOL                                         : HTTP/1.0
   * SERVER_SOFTWARE                                         : puma 6.6.0 Return to Forever
   * action_controller.instance                              : #<PhotosController:0x000079878fa76b98>
   * action_dispatch.authenticated_encrypted_cookie_salt     : [FILTERED]
   * action_dispatch.backtrace_cleaner                       : #<Rails::BacktraceCleaner:0x00007987d1518f60>
   * action_dispatch.content_security_policy                 :
   * action_dispatch.content_security_policy_nonce_directives:
   * action_dispatch.content_security_policy_nonce_generator :
   * action_dispatch.content_security_policy_report_only     : false
   * action_dispatch.cookies                                 : #<ActionDispatch::Cookies::CookieJar:0x000079878fa75248>
   * action_dispatch.cookies_digest                          :
   * action_dispatch.cookies_rotations                       : #<ActiveSupport::Messages::RotationConfiguration:0x00007987d9aee6a8>
   * action_dispatch.cookies_same_site_protection            : #<Proc:0x00007987d3ca7ec8 /var/www/bikelink/vendor/bundle/ruby/3.3.0/gems/railties-7.2.2.1/lib/rails/application.rb:641>
   * action_dispatch.cookies_serializer                      : json
   * action_dispatch.debug_exception_log_level               : 3
   * action_dispatch.encrypted_cookie_cipher                 : [FILTERED]
   * action_dispatch.encrypted_cookie_salt                   : [FILTERED]
   * action_dispatch.encrypted_signed_cookie_salt            : [FILTERED]
   * action_dispatch.http_auth_salt                          : [FILTERED]
   * action_dispatch.key_generator                           : #<ActiveSupport::CachingKeyGenerator:0x00007987c9f9c200>
   * action_dispatch.log_rescued_responses                   : true
   * action_dispatch.logger                                  : #<ActiveSupport::BroadcastLogger:0x00007987d390cd18>
   * action_dispatch.parameter_filter                        : [/(?i:confirm_password)|(?i:credit_card_number)|(?i:password)|(?i:passw)|(?i:secret)|(?i:token)|(?i:_key)|(?i:crypt)|(?i:salt)|(?i:certificate)|(?i:otp)|(?i:ssn)/, /(?i:person\.otp_secret)|(?i:encrypted_rich_text\.body)/]
   * action_dispatch.permissions_policy                      :
   * action_dispatch.redirect_filter                         : []
   * action_dispatch.remote_ip                               : 174.249.144.147
   * action_dispatch.request.content_type                    :
   * action_dispatch.request.formats                         : [#<Mime::Type:0x00007987d98eec40 @synonyms=["application/xhtml+xml"], @symbol=:html, @string="text/html", @hash=4515816433898964469>]
   * action_dispatch.request.parameters                      : {"controller"=>"photos", "action"=>"show", "id"=>"3734"}
   * action_dispatch.request.path_parameters                 : {:controller=>"photos", :action=>"show", :id=>"3734"}
   * action_dispatch.request.query_parameters                : {}
   * action_dispatch.request.request_parameters              : {}
   * action_dispatch.request.unsigned_session_cookie         : {"session_id"=>"116f73ed88e636c2f9278120df4f56af", "warden.user.person.key"=>[[8017], "a1N-gy-GwZZ2YyBuzwYT"], "_csrf_token"=>"[FILTERED]", "params_for_filter"=>{"filter_by_location"=>nil, "filter_by_owner"=>nil, "filter_by_state"=>2, "filter_by_priority"=>nil}}
   * action_dispatch.request_id                              : f53afb86-d0a3-490a-b70e-ed632ac5a7cf
   * action_dispatch.route_uri_pattern                       : /photos/:id(.:format)
   * action_dispatch.routes                                  : #<ActionDispatch::Routing::RouteSet:0x00007987d171bce0>
   * action_dispatch.secret_key_base                         : [FILTERED]
   * action_dispatch.show_detailed_exceptions                : false
   * action_dispatch.show_exceptions                         : all
   * action_dispatch.signed_cookie_digest                    :
   * action_dispatch.signed_cookie_salt                      : [FILTERED]
   * action_dispatch.use_authenticated_cookie_encryption     : [FILTERED]
   * action_dispatch.use_cookies_with_metadata               : true
   * newrelic.transaction_started                            : true
   * puma.config                                             : #<Puma::Configuration:0x00007987daae8b80>
   * puma.request_body_wait                                  : 0.0038604736328125
   * puma.socket                                             : #<UNIXSocket:0x000079877f9357d0>
   * rack.after_reply                                        : []
   * rack.errors                                             : #<IO:0x00007987dc7f9058>
   * rack.hijack                                             : #<Puma::Client:0x00007987c5338990>
   * rack.hijack?                                            : true
   * rack.input                                              : #<Puma::NullIO:0x00007987da6717f0>
   * rack.multiprocess                                       : true
   * rack.multithread                                        : true
   * rack.request.cookie_hash                                : {"_ga"=>"GA1.1.591705528.1728089262", "__utmz"=>"136922275.1728412683.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)", "__utma"=>"136922275.591705528.1728089262.1738795497.1738805397.196", "_bikelink_session"=>"73sFqAJcD9Qd/bbRM8cm8khscS6hVrdo2aFcaEF7Om4iT9ljUqqfPkFj5MQvyFM/WT1JoDBtTOVkN7+LjLI1ef...
   * rack.request.cookie_string                              : _ga=GA1.1.591705528.1728089262; __utmz=136922275.1728412683.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utma=136922275.591705528.1728089262.1738795497.1738805397.196; _bikelink_session=73sFqAJcD9Qd%2FbbRM8cm8khscS6hVrdo2aFcaEF7Om4iT9ljUqqfPkFj5MQvyFM%2FWT1JoDBtTOVkN7%2BLjLI1efxFuy%2FoAnW%2BcTjXGdKwIsoNVCXZdYIUbLi%2BOvT8AmPTPGqh5iGBgGG5LD0k37TB5n3Pcj2EZEErdFG1H55xW2VxTQtZr04xUPzISjnmsB2%2BXvTGhBvqCrXG9%2Bn3jWs5pn5oPk2dp6LpnyD3UvUfEoh1zM%2BIeCsuGDsfYPs%2Fv7dylj1N3WwW6QC1S%2Bh86QUf5S4gjYK%2BtiddMtBmpgg%2BGnR7QX90VPsvJTwBfeVX3AoXQcM0aE0NxcvWBdX0AFiMiNSWyimpKTp7Oei001Bd265%2FqK9ZHjFGO5gwenZ1cdl9%2FdM7edXsthC96H5D2oBbMt30dJMU7KhkleTz3a%2F3qTWGc4t%2FOxWXTdg%2Bn%2BDR2H3ctom0f%2FG4KXvN4qdn0rEIxyxgWz2QFnpC8DfEJgZqnP%2F5bfsZo0STeHh0a%2BksvV%2BaD%2BTL%2FbuXyeF7Qft3ajAuIkD2e1VIXIKzZ%2BEchKIK4lWzQhE1QQYVz9DU4u7AID54vG5FaSYieMIb%2B5gghDZwG6Q%3D--jyEY44AzrnSh6I%2B3--RpfeoE7hNpCgrW3ABXOntw%3D%3D; _ga_5XJXN3VELE=GS1.1.1742410594.375.1.1742410694.0.0.0
   * rack.request.form_hash                                  : {}
   * rack.request.form_input                                 : #<Puma::NullIO:0x00007987da6717f0>
   * rack.request.query_hash                                 : {}
   * rack.request.query_string                               :
   * rack.run_once                                           : false
   * rack.session                                            : #<ActionDispatch::Request::Session:0x000079878fa77138>
   * rack.session.options                                    : #<ActionDispatch::Request::Session::Options:0x000079877f931630>
   * rack.tempfiles                                          : []
   * rack.url_scheme                                         : https
   * rack.version                                            : [1, 6]
   * rails.rack_logger_tag_count                             : 1
   * warden                                                  : Warden::Proxy:18427700 @config={:default_scope=>:person, :scope_defaults=>{}, :default_strategies=>{:person=>[:two_factor_authenticatable, :two_factor_authenticatable, :rememberable]}, :intercept_401=>false, :failure_app=>#<Devise::Delegator:0x00007987d022d5b8>}

-------------------------------
Backtrace:
-------------------------------

 app/controllers/concerns/turbo/redirection.rb:9:in `redirect_to'
 app/controllers/photos_controller.rb:20:in `show'
 app/controllers/application_controller.rb:45:in `process_action'
Znovu načíst