Necesito agregar una reescritura de NGINX para reemplazar "İ" (Capital I con un punto en la parte superior) con una "i" normal en las URL con el siguiente patrón:
Pude capturar "İ" con (?:[\x{130}]) de la siguiente manera:
https://regex101.com/r/ZfWlGa/1
Cuando se traduzca a NGINX, reescriba de la siguiente manera. No funciona.
reescribe (.)(?:[\x{130}])(.) $1i$2 permanente;
También probé el enfoque opuesto, es decir, encontrar caracteres que no sean ASCII y reemplazarlos con "i" de la siguiente manera. Tampoco funciona.
https://regex101.com/r/VxBB30/1
¿Cuál es la forma correcta de hacerlo?
No creo que la sintaxis de expresiones regulares de Nginx sea compatible con la notación de punto de código Unicode. En su lugar, puede escribir el punto de código como dos octetos. U+0130 se representa en UTF8 como los dos octetos C4 y B0 .
Por ejemplo:
rewrite ^(.*)\xC4\xB0(.*)$ $1i$2 permanent;