Php 如何在app.yaml中构建此重写规则?

Php 如何在app.yaml中构建此重写规则?,php,.htaccess,google-app-engine,mod-rewrite,yaml,Php,.htaccess,Google App Engine,Mod Rewrite,Yaml,我想将我的php webapp迁移到Google App Engine。问题是,我目前使用htaccess文件来管理重写规则。通常规则很简单,但我不知道如何将一条规则从htaccess迁移到app.yaml文件 htaccess规则是: RewriteRule ^product/([-_0-9a-z]*)/$ product.php?p=$1 [L] 应该重定向http://example.de/product/red-pants/ 到http://example.de/product.php

我想将我的php webapp迁移到Google App Engine。问题是,我目前使用htaccess文件来管理重写规则。通常规则很简单,但我不知道如何将一条规则从htaccess迁移到app.yaml文件

htaccess规则是:

RewriteRule ^product/([-_0-9a-z]*)/$ product.php?p=$1 [L]
应该重定向http://example.de/product/red-pants/ 到http://example.de/product.php?p=red-裤子

对我来说,URL看起来像一个文件夹是很重要的

我希望有一个简单而优雅的解决方案


我感谢任何帮助:谢谢

试试这样的方法:

$path = explode("/", parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH));
$product = $path[2];
这是你的。亚马尔


你不能直接在app.yaml中完成,但你可以通过一个小的辅助PHP脚本来完成——不幸的是,我自己的PHP fu很弱,所以我不能直接向你展示如何解决你的具体问题,这显然还取决于你的PHP应用程序代码是依赖于$\u GET['q']还是更现代的$\u服务器['REQUEST\u URI']所以,您可能想编辑您的Q来澄清这一点——在此之后,我相信一些PHP专家可以精心设计一个完整的答案。
- url: /.*
  script: index.php