2013-10-24 108 views
0

我尝试使用GAE创建php web应用程序。谷歌应用程序引擎-php:脚本处理程序

在GAE教程“的脚本处理程序执行一个PHP脚本来处理该URL模式相匹配的请求。映射定义URL模式匹配,并要执行的脚本”

现在我想将url与文件夹中具有相同名称的文件进行映射,例如如果url是/hello.*,它将映射文件夹中的文件名hello.php。如果是/hello1.*,则文件夹中的hello1.php将被响应到服务器。

我认为这应该直接通过映射url的名称与文件夹中的名称来完成。但是,如果我在app.yaml中为处理程序留空,我得到一个错误。

所以我想知道如何在app.yaml中设置处理程序?

回答

1

使用数字字符类来提取数字,使用?要匹配0次或更多次,请使用。*来匹配网址的其余部分。

- url: /hello(\d?).* 
    script: hello\1.php 

当然,如果你只是想匹配传入的URL同名的文件,你可以使用

- url: /(.*)\.php$ 
    script: (\1).php 

如果你不想让他们指定一个.PHP结束然后它的

- url : /(.*) 
    script: (\1).php 
+0

谢谢!但是,你能解释'(\ 1)'是什么意思吗? @Stuart Langley – Eve

+0

阅读正则表达式捕获组。 http://en.wikipedia.org/wiki/Regular_expression。 –