如何编写nginx重写以执行以下操作:
https://anydomain.com/v1/article-> https://anydomain.com/v1/index.cfm/?endpoint=/article
此处“ anydomain.com/v1/”可以是任何值。
还可以允许我再添加一个:
https://anydomain.com/services-> https://anydomain.com/?id=services
..其中“ https://anydomain.com”可能是任何东西,所以可能是:
tomatoes.com/plants-> Tomatos.com/?id=plants
真的在正则表达式上苦苦挣扎,所以任何帮助都非常感谢! =)
答案 0 :(得分:1)
我们可以以如下表达式开头:
(https?:\/\/(www\.)?anydomain\.com\/v1\/)(.+)
问题的第一部分。
对于第二个,我们可以开始:
(https?:\/\/(www\.)?anydomain\.com\/)(services)
如果domain可以是任何东西,我们将其简化为:
(https?:\/\/(www\.)?.+\.com\/)(services)
或者:
(https?:\/\/(www\.)?.+\.com\/v1\/)(.+)
,我们将继续找出适合的表达式,以实现我们期望的目标/输出。
jex.im可视化正则表达式: