2013-10-24 168 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。 –