From b5b6136d9ebbc5bcedbd22f9b2efba4deb4b45ff Mon Sep 17 00:00:00 2001
From: Falko Timme <ft@falkotimme.com>
Date: Sat, 08 Mar 2014 17:03:20 -0500
Subject: [PATCH] - Fixed FS#3365 - Valid nginx rewrite rules are rejected with "Invalid Rewrite Rules" message
---
server/plugins-available/nginx_plugin.inc.php | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php
index e9eab41..bf6fc20 100644
--- a/server/plugins-available/nginx_plugin.inc.php
+++ b/server/plugins-available/nginx_plugin.inc.php
@@ -986,6 +986,18 @@
$final_rewrite_rules[] = array('rewrite_rule' => $custom_rewrite_rule_line);
continue;
}
+ if(preg_match('@^\s*rewrite\s+(^/)?(\'[^\']+\'|"[^"]+")+(\$)?\s+(\'[^\']+\'|"[^"]+")+(\s+(last|break|redirect|permanent|))?\s*;\s*$@', $custom_rewrite_rule_line)){
+ $final_rewrite_rules[] = array('rewrite_rule' => $custom_rewrite_rule_line);
+ continue;
+ }
+ if(preg_match('@^\s*rewrite\s+(^/)?(\'[^\']+\'|"[^"]+")+(\$)?\s+\S+(\s+(last|break|redirect|permanent|))?\s*;\s*$@', $custom_rewrite_rule_line)){
+ $final_rewrite_rules[] = array('rewrite_rule' => $custom_rewrite_rule_line);
+ continue;
+ }
+ if(preg_match('@^\s*rewrite\s+(^/)?\S+(\$)?\s+(\'[^\']+\'|"[^"]+")+(\s+(last|break|redirect|permanent|))?\s*;\s*$@', $custom_rewrite_rule_line)){
+ $final_rewrite_rules[] = array('rewrite_rule' => $custom_rewrite_rule_line);
+ continue;
+ }
// if
if(preg_match('@^\s*if\s+\(\s*\$\S+(\s+(\!?(=|~|~\*))\s+(\S+|\".+\"))?\s*\)\s*\{\s*$@', $custom_rewrite_rule_line)){
$final_rewrite_rules[] = array('rewrite_rule' => $custom_rewrite_rule_line);
--
Gitblit v1.9.1