If you already have a route that you use in a normal view, then you can just replace _path with _url.
If you are building a custom link, then just use the root_url
variable in a string which will print out: http://yourhost.com/
eg for HTML emails, assuming a filename
variable
<%= link_to 'Download PDF', "#{root_url}#{filename}" %>
for Text emails:
<%= "#{root_url}#{filename}" %>
Make sure you set your correct host name for each environment in your config/environments/ENV.rb as this is where the _url gets its hostname from
eg: config/environments/production.rb
config.action_mailer.default_url_options = { :host => 'yourhost.com' }