Apache error 500 DirectoryIndex not allowed here

totalimpact used Ask the Experts™
I have a few joomla sites hosted on a windows server using WAMP apache, now when I go to any site, the page wont display, and it just shows an internal server error 500. I suspect malice, but on to solving.

the apache_error.log only shows:
[Mon Aug 08 09:49:27 2011] [alert] [client] D:/wamp/www/.htaccess: DirectoryIndex not allowed here

and the path there doesnt make sense, since I am trying to open a site at D:/wamp/www/mysite

for instance, my httpd.conf has a few sites like this (nothing in the root www dir):

           <VirtualHost *>
    ServerName www.mysite.com
    DocumentRoot d:/wamp/www/mysite

also attached iis the httaccess file I am using
DirectoryIndex index.php
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
Options -Indexes

########## Begin - Rewrite rules to block out some common exploits
## If you experience problems on your site block out the operations listed below
## This attempts to block the most common type of exploit `attempts` to Joomla! 
# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
########## End - Rewrite rules to block out some common exploits

Open in new window

Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
system administrator
Top Expert 2007

probably defined above your VirtualHost section as default DocumentRoot and is accessed if no VirtualHost section found or NameVirtualHost is disabled.

1) Check that in httpd.conf you have:
NameVirtualHost x.x.x.x
where x.x.x.x is your server IP address

2) Change VirtualHost section, so it would look like:
<VirtualHost x.x.x.x>
    ServerName www.mysite.com
    DocumentRoot d:/wamp/www/mysite

3) Check that you access your website by name www.mysite.com, not by IP (that should direct you to  default directory server DocumentRoot).


Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial