所以我刚刚使用这个提议的框架为我的业务客户端完成了一个 REST API 的实现作为开始: https ://github.com/ezimuel/zend-expressive-api
在按照客户的要求对 API 进行编程后,我通过在项目的根文件夹中打开控制台终端并键入以下内容,设法让它在 localhost 上运行:
php -S 0.0.0.0:8080 -tc:/wamp64/www/myAPI/public/
在那之后,为了看到它的工作,我所要做的就是通过一个 HTTPie 窗口通过提示:
http GET :8080/api/users
...等等。奇迹般有效。
所以现在我必须在我的 Apache Web 服务器上发布它,共享主机,这意味着没有任何 root 访问权限。
问题是,我无法让它工作,因为当我尝试直接访问文件夹http://myswebsite.com/myapi/public时,脚本返回:
无法获取http://myswebsite.com/myapi/public/
我希望在 hal+json 中看到包含用户列表的输出。在本地主机中时,我可以这样做:
http GET :8080/api/users
然后脚本返回:
HTTP/1.1 200 OK 连接:关闭 内容类型:application/hal+json 日期:周一,2018 年 5 月 7 日 14:54:46 +0200 主机:localhost:8080
{
"_embedded": {
"users": [
{
"_links": {
"self": {
"href": "http://localhost:8080/api/users/1"
}
},
"email": "foo@host.com",
"id": "1",
"name": "Foo"
}
]
},
"_links": {
"self": {
"href": "http://localhost:8080/api/users?page=1"
}
},
"_page": 1,
"_page_count": 1,
"_total_items": 1
}
我的目标:我希望通过互联网上的 URL、PHP + Apache + MySql 共享主机访问时能够获得相同的结果。
任何帮助,将不胜感激。提前致谢。