After a little thought, I figured out what my problem was. My directory structure is
/Users/my_user/Sites/directory/httpdocs/(my stuff)
with everything under "Sites" being a symlink. However, my directive says
Code:
<VirtualHost *:80>
DocumentRoot "/Users/my_user/Sites/directory/httpdocs"
ServerName mylocalsite.com
ErrorLog "/private/var/log/apache2/mylocalsite.com-error_log"
CustomLog "/private/var/log/apache2/mylocalsite.com-access_log" common
<Directory "/Users/my_user/Sites/directory/httpdocs">
Options FollowSymLinks
AllowOverride All
</Directory>
</VirtualHost>
The problem was the Directory part. This tells apache to follow all symlinks
under httpdocs. Well my symlink starts at "directory". So I solved the problem by making "directory" a regular directory. So now /Users/my_user/Sites/directory is just a plain old directory. Then, I made "httpdocs" point to httpdocs on my thumbnail drive. Finally, I changed
<Directory "/Users/my_user/Sites/directory/httpdocs">
to
<Directory "/Users/my_user/Sites/directory">
So now it will follow all symlinks under "directory", which is what I was after.
Btw, usb drives are SLOW! I need to get myself a faster firewire or thunderbolt drive! Anyway, hopefully this will help save someone the hours of confusion I wasted on this matter.