我正在尝试访问来宾用户的其余API
http://localhost/b_marketing/api/rest/products
,但页面重定向到404页面。我已经正确检查了ACL属性RULES,REST - 属性和REST - ROLES中的retrive目录产品。通过使用这些所有配置,它也可以在我的其他项目中正常工作
我需要在这里提一件事,我的项目只有在我使用http://localhost/b_marketing/index.php
时才能工作,尽管设置了htaccess重写并从管理面板设置重写。我的apache重写也已设置。
当我使用http://localhost/b_marketing/api/?wsdl
时,它会起作用,而某些xml会返回。
但我不能使用http://localhost/b_marketing/api/rest/products
响应标题始终为404。
我也无法使用http://localhost/b_marketing/index.php/api/rest/products
访问REST API。
答案 0 :(得分:4)
确保您在.htaccess中有重写规则。
如果您没有.htaccess文件,您可以考虑复制原始文件 Magento packagem
答案 1 :(得分:1)
.htaccess不受支持。编辑nginx配置并添加以下行:
location /api {
rewrite ^/api/rest /api.php?type=rest last;
}
我读到该行有时已经存在,但break
代替last
。那是错的,把它改成last
。
答案 2 :(得分:0)
请务必使用-MultiViews
。由于api.php
和/api
路径具有相同的名称(没有扩展名),因此Apache可能会自动将api
解析为api.php
并导致问题。