बस हर अनुरोध पर मुझे निम्नलिखित त्रुटि मिल रही है:
Rule execution error - PCRE limits exceeded (-8): (null).
गुग्लिंग के एक झुंड के बाद एकमात्र समाधान लगता है
a) अपने httpd.conf में निम्नलिखित जोड़ें
SecPcreMatchLimit 150000
SecPcreMatchLimitRecursion 150000
b) अपने php.ini में निम्नलिखित जोड़ें
pcre.backtrack_limit = 10000000
pcre.recursion_limit = 10000000
ग) एक संस्करण का उपयोग करें जो -disable-pcre-match-limit
विकल्प के साथ संकलित किया गया था ।
मैं निम्नलिखित चला रहा हूँ:
Apache / 2.5.12 ( http://www.modsecurity.org/ ) के लिए मॉडसैक्विटी ।
Apache / 2.2.16 (डेबियन) PHP / 5.3.3-7 + निचोड़ 8 के साथ सुहोसिन-पैच mod_ssl / 2.2.16 OpenSSL / 0.9.8
मेरे नियमों के लिए, मैं OWASP ModSecurity Core Rule Set Project संस्करण (CRS) संस्करण 2.2.3 का उपयोग कर रहा हूं जो इस पोस्टिंग के रूप में सबसे नया है।
मेरे httpd.conf में अनिवार्य रूप से शामिल हैं:
<IfModule security2_module>
SecUploadDir /var/asl/data/suspicious
SecDataDir /var/asl/data/msa
SecTmpDir /tmp
SecAuditLogStorageDir /var/asl/data/audit
Include modsecurity.d/modsecurity_crs_10_config.conf
Include modsecurity.d/activated_rules/*.conf
SecRuleEngine On
# Debug log
SecDebugLog /var/log/apache2/modsec_debug.log
SecDebugLogLevel 3
# Serial audit log
SecAuditEngine RelevantOnly
SecAuditLogRelevantStatus ^5
SecAuditLogParts ABIFHZ
SecAuditLogType Serial
SecAuditLog /var/log/apache2/modsec_audit.log
SecPcreMatchLimit 150000
SecPcreMatchLimitRecursion 150000
</IfModule>
<IfModule mod_php5.c>
php_admin_flag pcre.backtrack_limit 10000000
php_admin_flag pcre.recursion_limit 10000000
</IfModule>
जिनमें से मेरी modsecurity.d
निर्देशिका के अंदर सभी डिफ़ॉल्ट नियम हैं CRS उनकी स्थापित फ़ाइल में है। मैंने 15000000 और 100000000000 और अधिक के लिए pcre सीमा भी निर्धारित की है, लेकिन उपलब्ध नहीं है।
तो निष्कर्ष में:
समाधान a
और b
काम नहीं कर रहे हैं, और मैं नहीं करना पसंद करते हैं c
... के रूप में मैं वास्तव में समझ नहीं / संकलन पसंद है।
किसी के पास कोई अन्य विचार है?