techiepark techiepark - 1 month ago 11
Apache Configuration Question

Apache Options -Indexes configuration not working

I need to stop directory listing of images directory on a website. I'm configuring cookieless domain for images and javascripts on a site. I have done the CNAME configuration and added below virtual hosts configuration in httpd.conf file. But, if i access this cookieless domain directly, its listing the whole directory content. how to solve this problem?


<VirtualHost ipaddr:80>
ServerAdmin webmaster@site.com
ServerName imgs.site.com
ServerAlias www.imgs.site.com
DocumentRoot /usr/tomcat/webapps/site/images

<Directory /usr/tomcat/webapps/site/images>
Options -Indexes FollowSymLinks
AllowOverride none
</Directory>

CustomLog logs/imgs.site.com_access_log "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\""
ErrorLog logs/imgs.site.com_error_log
</VirtualHost>

<VirtualHost ipaddr:80>
ServerAdmin webmaster@site.com
ServerName imgs.site.com
ServerAlias www.imgs.site.com imgs.site.net
DocumentRoot /usr/tomcat/webapps/site/images

<Directory /usr/tomcat/webapps/site/images>
Options -Indexes FollowSymLinks
AllowOverride none
</Directory>

CustomLog logs/imgs.site.com_access_log "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\""
ErrorLog logs/imgs.site.com_error_log
</VirtualHost>

Zed Zed
Answer

A quick workaround is to put an index.html file into the directory, with arbitrary content. Indexing will display the contents of this file instead of the directory listing.