如何解决cakephp 3.8.13 nginx未经授权
我正在尝试在CakePHP中实现JWT身份验证。所以我用了admad/cakephp-jwt-auth
。我可以生成令牌,然后在Header
的HTTP请求中发回令牌时,它会返回Unauthorized
错误。我正在使用devilbox
nginx
来托管服务器。所以我用谷歌搜索,发现在xampp的情况下我们必须允许
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
.htaccess文件中的。所以我将webroot / .htaccess文件修改为
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule .* - [e=HTTP_AUTHORIZATION:%1]
</IfModule>
然后我检查了nginx配置文件是否允许Authoriztion。默认情况下它不存在,所以我修改了配置文件
xdomain_request: |
# Allow cross domain request from these hosts
if ( $http_origin ~* (__REGEX__) ) {
add_header "Access-Control-Allow-Origin" "$http_origin";
add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS';
add_header 'Access-Control-Allow-Headers' 'Accept,Authorization,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range';
add_header 'Access-Control-Expose-Headers' 'DNT,Range';
add_header 'Access-Control-Max-Age' 0;
return 200;
}
仍然,我收到未经授权的错误。
有人可以帮我解决这个问题吗?我正在用邮递员应用程序对此进行测试。谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。