事情就是这样,我正在构建需要根据请求 URI 调度 http 请求的调度程序类,所以我只对域后面的 URI 部分感兴趣。
现在,当我在像这样的 URI 上的实时服务器上工作时:
www.domain.com/controller/method/params/
REQUEST_URI 将返回:
/controller/method/params/
但是当我在本地机器上工作时,我有这样的 URI:
localhost/project/controller/method/params/
REQUEST_URI 将返回:
/project/controller/method/params/
那么有没有一种优雅而简洁的方法来告诉 php 从 URI 中只获取我需要的参数? 它不一定必须是 $_SERVER['REQUEST_URI'],但我需要该字符串在实时服务器和本地服务器上都相同吗?
谢谢!
Dispatcher 将当前请求 URI 与配置文件中定义的 URI 进行比较。在实时服务器上它匹配,但在本地机器上比实时服务器多一个段。
我该如何处理?
最佳答案
通常我将我的本地网络服务器配置为响应“test.mysite.com”,并在主机文件中将 test.mysite.com 设置为 127.0.0.1,这样我可以更好地模拟生产环境,并且我不会被强制在 url 中使用子路径
如果你使用 apache 网络服务器,你可以简单地设置 N 个虚拟主机。
关于php - 如何在本地主机和实时服务器上获得相同的 $_SERVER ['REQUEST_URI' ],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10109907/