It's easy to provide a simple link to download a vcard. The problem is that normal devices doesn't recognize the downloaded vcard and will most often just render them in the browser as plain text.
This gist is an example of how you can download the vcard with proper mime-type, which allows the device to recognize it as a vcard.
This example assumes that you have a model Contact with a connected vcard. This example was built using a simple carrierwave uploader to upload the vcard to amazon s3.