如何在 Google App Engine app.yaml 中处理尾部斜线
Posted
技术标签:
【中文标题】如何在 Google App Engine app.yaml 中处理尾部斜线【英文标题】:How to handle trailing slashing in Google App Engine app.yaml 【发布时间】:2015-10-16 17:46:56 【问题描述】:我在这里尝试回答这个 SO 问题时遇到了这个问题:Removing php file extension when serving PHP files about how to route certain requests in app.yaml for Google App Engine。
但我不知道如何使用单个 app.yaml 正则表达式映射对可能有也可能没有斜杠的 url 的请求。现在,我用两行来处理这个案例:
handlers:
- url: /(.*)/
script: /\1.php
- url: /(.*)
script: /\1.php
但这似乎是多余的。这两行可以合二为一吗?
我认为应该可行的事情,比如
url: /(.*)(/?)
和
url: /(.*)(/0,1)
和
url: /(.*)(/?$)
似乎不适用于带有斜杠的请求。
【问题讨论】:
【参考方案1】:使用非贪婪的正则表达式。
/(.*?)/?$
DEMO
【讨论】:
以上是关于如何在 Google App Engine app.yaml 中处理尾部斜线的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Google App Engine 的 app.yaml 文件中配置 servlet 过滤器?
如何在 Google Cloud Functions 和 Google App Engine 之间进行选择?
如何在 Google App Engine 中执行全文搜索?