在开发api接口时候,token放到了信息头的Authorization上,后端直接读取信息头拿去token,总是拿不到,把整个header打印出来,就是没有Authorization
放线上环境又没有问题,线上和本地环境差的就是NGINX和apache……
Google发现是apache的问题,原来是apache把这个信息头Authorization去掉了
修改.htaccess文件就可以修复,新增这部分。
第一种方法:
~~~
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
#增加如下内容
SetEnvIf Authorization .+ HTTP_AUTHORIZATION=$0
</IfModule>
~~~
第二种方法:
~~~
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
~~~
转载:[https://blog.csdn.net/F\_e\_lix/article/details/82349348](https://blog.csdn.net/F_e_lix/article/details/82349348)