i have a virtual site on my 'personal' OSX 10.4.3 server. Drupal 4.6.3, Apache 1.3.33, php 5.0.4
in the site root dir directory lives several [php] applications, including an install of Drupal, i.e., Drupal's files/folders are unpacked in the root dir.
Drupal has the option in it's admin settings for Clean Urls --a checkbox-- so that it doesn't write stuff like '?q=' on urls.
it uses this supplied .htaccess file:
#
# Apache/PHP/Drupal settings:
#
# Protect files and directories from prying eyes.
Order deny,allow
Deny from all
# Set some options.
Options -Indexes
Options +FollowSymLinks
# Customized error messages.
ErrorDocument 404 /index.php
# Set the default handler.
DirectoryIndex index.php
# Override PHP settings. More exist in sites/default/settings.php, but
# the following cannot be changed at runtime. The first IfModule is
# for Apache 1.3, the second for Apache 2.
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0