在PHP中,用于urlhttp://usx:psx@fw.eg-03.local/pax-neo-sandbox/v1/e
我从哪里得到用户名usx
和密码psx
部分?
基于url:https url中的用户名和密码我在标题里找不到。我的。htaccess也有
行RewriteCond %{HTTP:Authorization} ^(.+)$
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
如果这是副本,请您指给我正确的方向。我无法在stackoverflow上找到它。
而且,我不需要用户名和密码的解决方案。我只需要得到所有的url部分或PHP(或服务器)放弃这个的原因。
提前感谢!
经过一些测试后,我意识到%{HTTP:Authorization}似乎被Apache忽略了,也被另一个使用cURL显式标头的应用程序发送。也许是出于安全考虑。
在我的php$_SERVER
变量中,我可以在'PHP_AUTH_USER'和'PHP_AUTH_PW'键下找到用户和密码。
此外,对于基本验证,我能够使用以下指令从头中提取用户和密码:[$user, $password] = explode (':', base64_decode(str_replace('Basic ', '', getallheaders()['Authorization'])));
(在现实世界中需要一点错误管理)