Apache Module Troubleshooting Guide
Overview
Apache Issues
-
Exclude/configure a specific path for inspection.
One should be able to exclude a specific path for inspection by using a Location block. For instance, if the URL is https://devrc.rarediseasesnetwork.org/redcap_v10.6.17 and using http2.4, it would bypass authentication for all paths starting with redcap.
<LocationMatch "^(/redcap_.*)">
AuthType None
Satisfy Any
Require all granted
</LocationMatch>
-
TCP TIME_WAITs spiking due to connections being closed when blocking.
Moving from the Apache post_read_request hook to the fixups hook (via SigSciEnableFixups On) seems to have resolved an issue where Apache is closing the TCP connection when blocking. The closes may cause larger TCP_WAIT counts when there is a larger number of blocks (e.g., rate limiting). SigSciEnableFixups On moves the inspection to slighly later in the module pipeline
-
Certain URLs, usually during authentication, may have issues with POST body requests that are causing errors.
To help narrow down whether POST body processing is the culprit, enable the following directive, SigSciAgentPostLen 0
The effects of this directive however will mean that the module is no longer reviewing the body contents of each request. This should only be used to help diagnosis problems in conjunction with additional logging.
Debugging
- Additional logging can be enabled through the
LogLeveldirective. In Apache 2.2, Per-module logging is not possible, so statingapache.conf LogLevel debug # or LogLevel warnapplies to the entire configuration, whereas in Apache 2.4+, applying a directive such asapache.conf LogLevel warn signalsciences:debugsets the main LogLevel to warn but enables debug for mod_signalsciences
References
- Apache Tutor - dated but good timely reference