мне нужно правило Nginx переписать для следующей задачи:Nginx правило перезаписи для удаления - и _
У меня есть Urls, которые включают несколько дефис и в конце концов, подчеркивает
Пример запроса: http://www.example.com/cat/cat2/200-AB---a-12_12-123.312/cat-_-cat/cat/dog---I
даст 404 ошибки так нужна в 301- переадресация:
http://www.example.com/cat/cat2/200-AB-a-12-12-123.312/cat-cat/cat/dog-I
Таким образом, все символы подчеркивания должны быть заменены дефисом, и должен быть только один дефис.
короткая версия: заменить --- на - и заменить _ на - , но заменяя _ на - это -_- станет --- и правилом нужно будет снова позвонить.
Возможно ли это в одном правиле? а если не так, как это сделать по-другому:) я не имею ни малейшего представления о том, как сделать это с помощью Nginx
любая помощь оценила :)
Я думаю, что это будет гораздо более гибким, если вы это на стороне приложения, а не на стороне nginx. –
Вам понадобится рекурсивная переписывание, перезаписи nginx являются рекурсивными, вам нужно найти правильный способ сделать это менее чем за 10 циклов. – regilero
Я понимаю, что переписать можно было бы в два этапа. сначала замените подчеркивание на дефис, а затем замените несколько дефисов на один. но я абсолютно не знаю, как это сделать. извините за это;/ – user2025805