# config file for urlfilter-suffix plugin

# case-insensitive, allow unknown suffixes
+I

# filter on URL path only
+P
# comment out to filter on complete URL
# but be aware that the pattern
#    .com
#  will then reject
#    http://xyz.com
#    http://xyz.com/search?q=foo.com
#  while the pattern
#    .mp3
#  will not apply to (URLs will pass)
#    http://xyz.com/music.mp3?q=abc

### prohibit these
# pictures
.gif
.gifv
.jpg
.jpeg
.jp2
.jpf
.jpx
.bmp
.png
.tif
.tiff
.ico
.icns
.eps
.ps
.wmf
.fpx
.cur
.ani
.img
.lwf
.pcd
.psp
.psd
.tga
.webp
.xbm
.xpm
.kdc
.svg
.svgz

# web-formats
.css
.js

# archives/packages
.apk
.arj
.arc
.7z
.cab
.lzw
.lha
.lzh
.mar
.zip
.gz
.tar
.tgz
.rar
.sit
.rpm
.deb
.udeb
.pkg
.bz2
.dmg
.lzma
.xz
.ipk
.whl
.egg
.crx

# audio/video
.mid
.midi
.rmi
.mpeg
.mpg
.mpe
.mp4
.mp3
.mp2
.aac
.mov
.m4a
.m4r
.m4v
.mp4a
.mpga
.f4v
.fla
.flac
.flv
.ra
.ram
.rm
.rmv
.wma
.wmv
.wav
.wave
.oga
.ogg
.webm
.avi
.avif
.au
.snd
.3gp
.3g2
.qt
.mka
.mks
.mkv
.mk3d
.opus
.xm
.m3u8
.movie
.aif
.aiff
.gblorb
.xhr

# fonts
.ttf
.otf
.pfb
.afm
.woff
.woff2

# executables and shared libraries
.exe
.com
.dll

# windows links
.lnk

# typo3-extensions
.t3x

# disc-images
.iso
.bin
