TracNav menu
-
Core Features
- Configuration File Syntax
- Configuration Options
- Change Root
- Performance
- PerformanceFastCGI
- SSL
- Traffic Shaping
- Using SMP
-
Modules
- mod_accesslog
- mod_access
- mod_alias
- mod_auth
- mod_cache
- mod_cgi
- mod_cml
- mod_compress
- mod_deflate
- mod_dirlisting
- mod_evasive
- mod_evhost
- mod_expire
- mod_extforward
- mod_fastcgi
- mod_flv_streaming
- mod_geoip
- mod_magnet
- mod_mem_cache
- mod_mysql_vhost
- mod_proxy
- mod_redirect
- mod_rewrite
- mod_rrdtool
- mod_scgi
- mod_secdownload
- mod_setenv
- mod_simple_vhost
- mod_ssi
- mod_status
- mod_trigger_b4_dl
- mod_userdir
- mod_useronline
- mod_usertrack
- mod_webdav
-
Modules (1.5 only)
- mod_proxy_core
- mod_sql_vhost_core
- mod_uploadprogress
- mod_deflate
-
Internals
- FastCGI state-engine
- Plugin interface
- HTTP state-engine
-
Additional
- User written Modules
Trigger before Download
Module: mod_trigger_b4_dl
Description
Anti Hotlinking:
- if user requests ''download-url'' directly, the request is denied and he is redirected to ''deny-url'
- if user visits ''trigger-url'' before requesting ''download-url'', access is granted
- if user visits ''download-url'' again after ''trigger-timeout'' has elapsed, the request is denied and he is redirected to ''deny-url''
The trigger information is either stored locally in a gdbm file or remotely in memcached.
Requirements
- libpcre
- libgdbm or libmemcache (install the C client API,visit http://people.freebsd.org/~seanc/libmemcache/ and http://danga.com/memcached/apis.bml for detail.)
Options
trigger-before-download.gdbm-filename = "/home/weigon/testbase/trigger.db" trigger-before-download.memcache-hosts = ( "127.0.0.1:11211" ) trigger-before-download.trigger-url = "^/trigger/" trigger-before-download.download-url = "^/download/" trigger-before-download.deny-url = "http://192.168.1.5:1025/index.html" trigger-before-download.trigger-timeout = 10
If both trigger-before-download.gdbm-filename and trigger-before-download.memcache-hosts is set gdbm will take precedence.
Installation
memcached should be started with the option -M as we don't want to remove entry if the memory is full.

