There is no "best" directory. And while people might argue that this question is subjective, or that the actual placement of files does not matter—and they're right about the latter—there are standardized recommendations on where to put what in Unix-like systems.
The Filesystem Hierarchy Standard defines this and offers you the following:
/var – a place to put data that changes during normal operation, like logs, etc.
/var/www is the default directory to place web content for Apache, but its usage is not standardized at all and just the "usual" place you'd put it because people don't change the default settings very often.
/srv – this directory should contain data that is served by the system. This is usually the place you want. The FHS explains:
This main purpose of specifying this is so that users may ﬁnd the location of the data ﬁles for particular service, and so that services which require a single tree for readonly data, writable data and scripts (such as cgi scripts) can be reasonably placed. Data that is only of interest to a speciﬁc user should go in that users’ home directory. (…)
One method for structuring data under
/srv is by protocol, eg.
So, simply create a
/srv/www directory and use this. You can create subfolders for every virtual host you might want to serve with your machine.
/home contains files that really should just belong to one user. Apache for example allows userdirs, so you can access a user's web files through
http://example.com/~username, and they're served from the
public_html directory in the user's home.
If you use a server that is shared among multiple people, and you want to allow everybody to host their own scripts, this is where they should go. Remember to make the directories writable by the user they belong to only.
/var/www are directories you should create subdirectories in for any web project you might want to host. You can then define different permissions on these directories to allow certain users or user groups to write to them. If you have projects for one user at a time, use