相关疑难解决方法(0)

为什么没有设置$ _SERVER ["PHP_AUTH_USER"]和$ _SERVER ["PHP_AUTH_PW"]?

在开始之前,我想指出我已经浏览了Stack Overflow并发现了其他类似的问题 - PHP_AUTH_USER未设置?PHP通过PHP验证 - PHP_AUTH_USER未设置? - 并且这些已经指出,如果''Server API''设置为''CGI/FCGI'',则不会设置认证$ _SERVER变量,但是我检查了''phpinfo()''输出和'' 'Server API''设置为''Apache 2.0 Handler''.

好的,我有一个简单的脚本如下:

<?php
    echo "Username: " . $_SERVER["PHP_AUTH_USER"] . ", Password: " . $_SERVER["PHP_AUTH_PW"];
?>
Run Code Online (Sandbox Code Playgroud)

...我通过以下方式远程呼叫:

wget -v --http-user=johnsmith --http-password=mypassword http://www.example.com/myscript.php
Run Code Online (Sandbox Code Playgroud)

......但只输出:

Username: , Password:
Run Code Online (Sandbox Code Playgroud)

我还尝试使用PHP cURL调用脚本并正确设置身份验证参数,如下所示:

 curl_setopt($ch, CURLOPT_USERPWD, "johnsmith:mypassword");
Run Code Online (Sandbox Code Playgroud)

...但我得到与上面相同的输出.

知道我做错了什么吗?也许我需要启用/配置其他东西?

php authentication web-services basic-authentication

7
推荐指数
2
解决办法
4万
查看次数