apache服务器 php获取不到Authorization

君笑尘
君笑尘 这家伙很懒,还没有设置简介...

0 人点赞了该文章 · 2241 浏览

在开发api接口时候,token放到了信息头的Authorization上,后端直接读取信息头拿去token,总是拿不到,把整个header打印出来,就是没有Authorization

放线上环境又没有问题,线上和本地环境差的就是NGINX和apache……

Google发现是apache的问题,原来是apache把这个信息头Authorization去掉了
修改.htaccess文件就可以修复,新增这部分

第一种方法:


RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
#增加如下内容
SetEnvIf Authorization .+ HTTP_AUTHORIZATION=$0

第二种方法:


RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]

# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

发布于 2020-11-03 15:10

免责声明:

本文由 君笑尘 原创发布于 小程序源码下载 - 开发资源站 ,著作权归作者所有。

登录一下,更多精彩内容等你发现,贡献精彩回答,参与评论互动

登录! 还没有账号?去注册

暂无评论

All Rights Reserved Powered BY WeCenter V4.0.2 © 2022