目前我在localhost上的DEV模式下工作。 在那里我像这样调用API。
http://localhost/project/web/app_dev.php/api/get_all
现在我想为api子域添加一个检测器,以便我可以使用上面的uri和下面的这个。
http://api.example.org/get_all
这可能吗?如果是的话:你能告诉我这是如何起作用的吗?
也许通过.htaccess
中的请求重写? (简单)
或者(复杂)通过对内核事件的重写请求?
我正在使用FOSUserBundle routing.yml
。
api:
resource: "@ApiBundle/Controller/"
type: annotation
prefix: /api
defaults: {_format: json}
答案 0 :(得分:1)
您可以按How to Match a Route Based on the Host。
中所述尝试此操作api:
resource: "@ApiBundle/Controller/"
type: annotation
path: /
host: "api.example.com"
defaults: {_format: json}
或使用PHP routing根据环境改变路线。
但我不推荐任何一种选择。