The File Attach option is particularly useful when dealing with large files. It allows you to upload a file through other means (such as FTP) and then reference that file through the file field. The reason this is so useful is because many php installations limit the file size that can be uploaded through the browser as well as the length of time the system should process an upload. Meaning, if it is too large, and takes too long, the system will time out, and the file will not get uploaded. In some instances, you can increase these limits to a point, but many hosts do not allow you to exceed a specified limit. So it's useful to have another option.

Before we create the article, I'll copy a sample.zip file to the "sites/default/files/file_attach" directory. Notice that it is 269.8 MB, which is larger than my site's 200 MB limit.

  • Go to “Content => Add content = > Article” (node/add/article)
  • Title: Article #5
  • Body: (Lorem Ipsum)
  • Click "File attach" (You'll be presented with a select list, which includes all of the files in that directory.)
  • Choose "sample.zip" and click "Attach"
  • (Save)

Now, when we take a look at the files directory, we'll see that sample.zip has been moved to the "articles/uploads" directory with the rest of our files. This is because we configured the field to move the file instead of copying it.

Next, we'll install another module "Remote File Source" which extends FileFiled Sources, and allows us to reference files on remote sources directly, eliminating the need to copy them to our server first.