Местоположения Nginx - без учета регистра с пробелами - PullRequest
3 голосов
/ 01 июня 2011

Мой вопрос касается блоков конфигурации "location" nginx:

Если я хочу сделать местоположение с пробелом (ну,% 20) в URL, я могу сделать это так:

location ^~ "/Style Library/" {
}

Если я хочу создать местоположение без учета регистра, я могу сделать это так:

location ~* ^/StyleLibrary/ {
}

Однако я не могу найти способ получить регистр без учета регистра с работающими пробелами. Ничто из этого не работает:

location ~* "^/Style Library/" {
}

location ~* ^/Style[^_]Library/ {
}

location ~* ^/Style\sLibrary/ {
}

location ~* ^/Style.Library/ {
}

Может кто-нибудь помочь?

1 Ответ

3 голосов
/ 02 июня 2011

Есть ли у вас другие местоположения регулярных выражений, которые могут обрабатывать запрос ранее в блоке сервера?Я только что выполнил тест локально и смог заставить работать следующее расположение:

location ~* "^/Style Library/" {
  rewrite ^ /dump.php;
}

, где /dump.php - это простой скрипт, который выполняет var_export ($ _ SERVER);

Я проверил это с

curl -i "dev/StYlE LiBrArY/"

Я бы предположил, что какое-то другое местоположение обрабатывает запрос, а не это местоположение регулярного выражения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...