For AI agents: visit https://docs.datadome.co/llms.txt for an index of all pages formatted in Markdown and endpoints in OpenAPI.
- Platform Integrations: Server-side
- Apache
Apache Changelog
- Remove hard-coded status codes in favor of DataDome Protection API response headers, enabling seamless support for upcoming features
- Increase length limit from 128 to 512 characters for DataDome cookie to support upcoming features
- Enable protection on specific
VirtualHost and Locations directives
- Update truncation limits to align with documentation
- Increase default timeout value to 150ms
- Enhance
sed command support for compatibility with BSD and GNU-base systems
- Enhance trace logs to improve human readability
- Revert previous cookie handling changes
- Improve cookie handling
- Avoid mismatches of
URIRegexExclusion between source file and configuration file
- Add session by header feature
- Improve headers management
- Collect Fetch Metadata headers (Sec-Fetch-*)
- Fix typo in payload field name (XForwardedForIp)
- Switch to semantic versioning
- Switch to OPENSSL_DIR variable to force paths for OpenSSL includes and libraries
- Support custom paths for OpenSSL includes and libraries
- Fix backward compatibility with OpenSSL
- Fix logs on response parsing
- Manage TLSv1.2 (HTTPS) with OpenSSL 1.1.1
- Remove DomeTimeOut & TimeOut unused parameters
- Restore default
DomeStatus on.
- Improve connection tracking
- Improve debug logging
- Deprecate unused
DomeStatus value
- Synch exclusion Regex with other modules
- Improve tracking Keep-Alive connection at edge case
- Fix build on Gentoo Linux
- Decrease DNS response TTL from 1 hour to 5 minutes
- Switch to use requests' IP addresses. This allows the override of the IP addresses by other modules, such as mod_remoteip for example
- Introduce the ApiURI option to override the API Server's call URI
- Add headers to the API Server's call: Content-Type, From, X-Real-IP, Via and True-Client-IP
- Improve X-Forwarded-For handling
- Fix crash caused when the API Server's domain has got no A records
- Disable SSLv3 for the API Server's connection
- Introduce support for 401 response code from the API Server
- Fix crash caused by using DomeStatus inside location directive
- Fix dynamic allocation of Regex inside the module's configuration
- Fix the wrong content type on blocked response when the configuration has a lot of rewrite rules
- Close the HTTPS connection properly
- Fix the regression with the API Server's Keep-Alive connection
- Improve the handling when the module can't allocate the memory
- Fix typo in Makefile
- Stop returning a partial body of API response to the client
- Add support for
X-DataDome-request-Headers
- Remove
X-dd-type header in RESPONSE headers
- Add
X-dd-type header in REQUEST headers
- Rename configuration options to
DomeName
- Fix an issue when the module's configuration is specified inside virtual host
- Add support for DATA_DOME_DISABLE environment variable to temporary disable the module
- Add functionality to allow specified Module directives at any place in the config
- Add verification by
X-DatadomeResponse header
- Send request's headers' names to the API Server
- Send the request's Connection, Pragma and Cache-Control header values
- Fix building by compiler without C99 mode
- Fix building on Apache 2.2
- Reduce error and info logs
- Fix the timeout error code
- Improve compatibility with HAProxy
- Add DATA_DOME_STATUS and DATA_DOME_SPENT_TIME environment variables
- Add 7xx status code to provide internal module status
- Remove compilation warning
- Improve timeout
- Fix picking-up random resolved address
- Fix spent time calculation
- Implement a more strict parse of the API server's response.
- Check socket status before sending anything
- Synch exclusion Regex with other modules
- Fix memory leak caused when the API server closed the SSL connection
- Stop initializing OpenSSL in the module when mod_ssl is expected to handle it
- Switch to using pre-reserved memory to create the API call body
- Fix error handling when memory can't be allocated
- Fix double free when API server isn't available
- Fix memory overflow when a value has a lot of symbols that are URL-encoded
- Truncate URL-encoded values
- Decrease the maximum API call to 10kb
- Add .mp4 and .otf to default exclusion Regex
- Remove all code that can read request body
- Add Regex exclusion
- Send a timestamp to the API server when the full request is ready
- Send
Content-Length header as PostParamLen
- Register the module as APR_HOOK_REALLY_FIRST to process the request as soon as possible
- Stop sending Cookies and Body to API server by default
- Add debug_params option
- Send Cookies length and Body length to API server
- Send Authorization length
- Send Method
- Send
X-Requested-With
- Send Origin
- Add URL encoding to API call parameters
- Fix crash caused by SSL reconnection to the API Server (double-free error)
- Fix Post param size limit
- Stop overwriting Set-Cookie header
- Implement change for the module to not generate ClientID
- Remove
X-DataDome header with module version
- Add support for
X-DataDome-headers from the API response
- Re-call the API server if a call had failed
- Add setup
DATA_DOME_IS_URI_REGEX_MATCHED env
- Add
X-DataDome header with module version
- Fix multiple calls to API Server
- Remove SSL_3 protocol as it is not supported by openssl anymore
- Add fix to re-generate client ID if it shorter or longer than expected
- Fix truncating timestamp for API requests on 32-bit systems
- Fix build on OSX
- Fix build on old linux where
clock_gettime required lrt
- Fix crash caused by
X-Forwarder-For without port
- Add Set-Cookie to error headers
- Add
DomePostParamLimit
- Add generated client_id to the request's cookie header
- Implement fix to send to client API response for 301, 302 and 403
- Implement fix to send to client location from API response for 301 and 302
- Implement fix to not trim the timestamp on 32-bit systems
- Implement change for Regex to apply to URL only, and not to MIME anymore
- Change Regex to case insensitive
- Implement Cookie and session ID
- Implement change to extract more from Header:
Accept, AcceptCharset, AcceptEncoding and AcceptLanguage