Mobile app version of vmapp.org
Login or Join
Candy875

: Htaccess / FilesMatch / DirectoryMatch allow .jpg .html and directories Navigation in my site is like this: www.example.com/pictures/cars/ etc I am trying to allow only .html and .jpg in these

@Candy875

Posted in: #Htaccess

Navigation in my site is like this:
example.com/pictures/cars/ etc

I am trying to allow only .html and .jpg in these folders, but I also need the directory to be accessible

Order allow,deny
Deny from all
<FilesMatch ".*.(jpg|html)$">
Order allow,deny
Allow from all
</FilesMatch>


This code works but the content now is only accessible while trying to access
www.example.com/pictures/cars/index.html

and www.example.com/pictures/cars/ is showing a 403 error

Can anyone help me with this?

10.01% popularity Vote Up Vote Down


Login to follow query

More posts by @Candy875

1 Comments

Sorted by latest first Latest Oldest Best

 

@Ogunnowo487

The <FilesMatch> directive matches against physical files. When requesting just the directory then the "file" is essentially empty. This is despite the fact that Apache then makes an internal subrequest for the directory index document (ie. index.html in this case). This subrequest would seem to occur after the <FilesMatch> directive is processed.

So, in order to allow direct access to directories you can modify your existing regex to allow "empty" files. For example:

<FilesMatch "^(.+.(jpg|html))?$">


This essentially makes the filename optional.



Aside: <DirectoryMatch> directives are only permitted in the server config (not .htaccess). .htaccess files are essentially the same as the <Directory> wrapper, but within your webspace.

10% popularity Vote Up Vote Down


Back to top | Use Dark Theme