1
我想安排一些事情,以便GET請求例如配置Apache將「GET/user/foo」路由到/user/GET.php和「PUT/user/foo」到/user/PUT.php
http://example.com/user/[email protected]
內部調用腳本
/var/www/example.com/rest/user/GET.php
和相同的URL PUT請求在內部調用腳本
/var/www/example.com/rest/user/PUT.php
等爲其他HTTP動詞POST和DELETE。
通過<Script>指令幾乎可以實現這個目標,但它不太可行,因爲「Script with a method of GET will only be called if there are query arguments present」。這意味着,如果Apache經由
<Location /user>
Script GET /rest/user/GET.php
Script PUT /rest/user/PUT.php
</Location>
配置然後,同時GET請求用於
http://example.com/user/[email protected]?foo=bar
將調用GET.php
,如果請求不包含查詢字符串「富=欄」,它不「T。
(另外,爲什麼<Script>
這樣設計擺在首位?)
其實我嘗試了首先是mod_rewrite解決方案,但由於其他原因(ScriptAlias和/或FastCGI驅動的PHP出錯)似乎更難解決......如果你確實有這個工作,你可以發佈你的Apache conf嗎? – mjs 2009-12-31 02:52:46