【发布时间】:2015-08-26 03:02:46
【问题描述】:
我刚刚创建了一个使用 REST API 的项目(使用 yii2 框架)。
REST API 的所有问题都在 localhost 上运行得非常好。但是将项目带到服务器上时(也使用相同的数据库),授权不可用。现在我正在使用“yii\filters\auth\HttpBearerAuth”
在“implements IdentityInterface”模型内部,有一个findIdentityByAccessToken的finding-token函数,非常简单,“validateAuthKey”函数总是返回true;见下文:
public static function findIdentityByAccessToken($token, $type = null){
return static::findOne(["token" => $token]);
}
public function validateAuthKey($token)
{
return true;
}
查看任何图片: https://www.flickr.com/photos/40158620@N03/20701523349/in/dateposted-public/ 任何人都可以对这个问题有一些经验,你能告诉我如何解决它吗?谢谢你的好心。
- 注意:
- 该项目,我正在关注https://github.com/NguyenDuyPhong/yii2_advanced_api_phong(它在本地主机上工作正常;我还在我的服务器上部署了该项目,它提出了同样的问题)
- 为确保服务器配置正确:我创建了 2 个操作,1 个已授权,另一个未授权。我检查了未经授权的操作,效果很好。 =======>
- actionView 未授权 => 获取 API 信息。没问题
- actionIndex 被 "yii\filters\auth\HttpBearerAuth" 授权 => FAIL
【问题讨论】:
-
你的服务器使用 Nginx 还是 Apache?
-
这是我的服务器配置:loyalty.gikapp.com/frontend/web/requirements.php + Web 服务器:Apache 2.4.16 (Unix) + OpenSSL 1.0.1e + PHP 5.5.27
-
Chịu rồi, trước từng gặp vấn đề với NginX còn apache thì chưa bao giờ :D
-
谢谢,你能告诉我你在 NginX 上的解决方案吗?它可能对我有用。 @@
-
您找到解决方案了吗?据我所知,我遇到了同样的问题。
标签: yii2 restful-authentication