diff --git a/app/models/topic_link.rb b/app/models/topic_link.rb index 98eefbcd81e..aafaff14b58 100644 --- a/app/models/topic_link.rb +++ b/app/models/topic_link.rb @@ -123,9 +123,11 @@ class TopicLink < ActiveRecord::Base if Discourse.store.has_been_uploaded?(url) internal = Discourse.store.internal? - elsif parsed.host == Discourse.current_hostname || !parsed.host + elsif (parsed.host == Discourse.current_hostname && parsed.path.start_with?(Discourse.base_uri)) || !parsed.host internal = true + parsed.path.slice!(Discourse.base_uri) + route = Rails.application.routes.recognize_path(parsed.path) # We aren't interested in tracking internal links to users