Configuring drupal in a virtual directory
Running Drupal in a subdomain and changing the document root of Apache virtual server are two different things.

To change document root you would set new paths in two Apache configuration lines for the given website:

DocumentRoot /home/username/public_html
&lt;Directory /home/username/public_html&gt;


Change the above two records to whatever you like, for example to:

DocumentRoot /home/username/public_html/sub-directory/sub-sub-directory
&lt;Directory /home/username/public_html/sub-directory/sub-sub-directory&gt;


and it wouldn't matter for Drupal as long as the following directive stays same:

ServerName example.com


In other words, whatever document root you set for a website, it will be still accessible through its domain name typed in the browser's address bar, set as ServerName in Apache configuration file, and Drupal will behave accordingly. 

However, if you want to just place Drupal in a sub-directory, then you do not have to meddle with Apache configuration at all.