|
|
@ -388,9 +388,12 @@ function purge($uri) { |
|
|
|
global $config, $debug; |
|
|
|
|
|
|
|
// Fix for Unicode |
|
|
|
$uri = urlencode($uri); |
|
|
|
$uri = str_replace("%2F", "/", $uri); |
|
|
|
$uri = str_replace("%3A", ":", $uri); |
|
|
|
$uri = rawurlencode($uri); |
|
|
|
|
|
|
|
$noescape = "/!~*()+:"; |
|
|
|
$noescape = preg_split('//', $noescape); |
|
|
|
$noescape_url = array_map("rawurlencode", $noescape); |
|
|
|
$uri = str_replace($noescape_url, $noescape, $uri); |
|
|
|
|
|
|
|
if (preg_match($config['referer_match'], $config['root']) && isset($_SERVER['REQUEST_URI'])) { |
|
|
|
$uri = (str_replace('\\', '/', dirname($_SERVER['REQUEST_URI'])) == '/' ? '/' : str_replace('\\', '/', dirname($_SERVER['REQUEST_URI'])) . '/') . $uri; |
|
|
|