Avatar billede bonden Nybegynder
17. maj 2003 - 23:09 Der er 24 kommentarer og
1 løsning

PHP_AUTH_USER virker ikke.....

Jeg sidder og arbejder på et site, hvor jeg bruger en login.php-fil til at give adgang til administratoren af sitet.
Filen ser ud som følger:
<?
if(!$PHP_AUTH_USER) {
    Header("WWW-authenticate: basic realm=\"GoodConnection\"");
    Header("HTTP/1.0 401 Unauthorized");
    echo "You are not authorized to access this document.\n";
    exit;
  }
  if ($PHP_AUTH_USER != "brugernavn" || $PHP_AUTH_PW != "password") {
    Header("WWW-authenticate: basic realm=\"GoodConnection\"");
    Header("HTTP/1.0 401 Unauthorized");
    echo "You are not authorized to access this document.\n";
    exit;
}
if(!$check)
{
$id=1;
include("index.php");
}
?>

...og det virker fremragende.
....lige indtil jeg har flyttet det over på den server, hvor sitet skal ligge.
Den kommer godt nok med boksen, men vil ikke acceptere brugernavn og adgangskode. Nogen, der har et bud?
Serveren kører med Apache 1.3.27 (unix) og PHP 4.3.1.
Jeg kan se, der er installeret noget Blowfish-krypterings-halløj, men det har vel ikke noget med problemet at gøre.
Avatar billede schaefner Juniormester
17. maj 2003 - 23:12 #1
Prøv:

if(!$_SERVER['PHP_AUTH_USER']) {

og:

if ($_SERVER['PHP_AUTH_USER'] != "brugernavn" || $_SERVER['PHP_AUTH_PW'] != "password") {
Avatar billede bonden Nybegynder
17. maj 2003 - 23:14 #2
Stadigt intet held
Avatar billede schaefner Juniormester
17. maj 2003 - 23:17 #3
Så prøv:

if(!$HTTP_SERVER_VARS['PHP_AUTH_USER']) {

og

if ($HTTP_SERVER_VARS['PHP_AUTH_USER'] != "brugernavn" || $HTTP_SERVER_VARS['PHP_AUTH_PW'] != "password") {
Avatar billede bonden Nybegynder
17. maj 2003 - 23:20 #4
Samme resultat der.
Avatar billede bonden Nybegynder
17. maj 2003 - 23:26 #5
Sidder lige og kigger lidt på phpinfo() og sammenligner med vore egne maskiner.
Under "server API" står der "CGI" på denne maskine - på vore egne står der "Apache". Men det har vel heller ikke noget med sagen at gøre?
Avatar billede erikjacobsen Ekspert
17. maj 2003 - 23:26 #6
Dette bør virke i version 4.3.1 - det er ovenikøbet testet!!

<?
if(!$_SERVER['PHP_AUTH_USER']) {
  Header("WWW-authenticate: basic realm=\"GoodConnection\"");
  Header("HTTP/1.0 401 Unauthorized");
  echo "You are not authorized to access this document.\n";
  exit;
}
if ($_SERVER['PHP_AUTH_USER'] != "aaa" || $_SERVER['PHP_AUTH_PW'] != "bbb") {
  Header("WWW-authenticate: basic realm=\"GoodConnection\"");
  Header("HTTP/1.0 401 Unauthorized");
  echo "You are not authorized to access this document.\n";
  exit;
}
?>
Du er inde
Avatar billede bonden Nybegynder
17. maj 2003 - 23:29 #7
Tak, Erik - men det hjælper lige lidt, desværre.
Avatar billede erikjacobsen Ekspert
17. maj 2003 - 23:30 #8
Joh, men virker det hos dig? En hurtig test kan så afgøre hvad
det er vi skal kigge efter
Avatar billede bonden Nybegynder
17. maj 2003 - 23:31 #9
Det virker fint på mine egne maskiner - bare ikke på den maskine, hvor det skal køre.
Avatar billede erikjacobsen Ekspert
17. maj 2003 - 23:32 #10
Jeg mener: præcis den kode, jeg har postet her. Virker den
på den "problematiske" maskine - eller ej?
Avatar billede bonden Nybegynder
17. maj 2003 - 23:33 #11
Præcis den kode, du har postet, virker ikke på problembarnet
Avatar billede erikjacobsen Ekspert
17. maj 2003 - 23:34 #12
Ok - vil du give et link? - gerne til min kode
Avatar billede bonden Nybegynder
17. maj 2003 - 23:37 #13
Avatar billede erikjacobsen Ekspert
17. maj 2003 - 23:40 #14
login.php er hvilken version af koden?

Vil (tør) du smide disse tre linier ind i toppen af koden?

print "<xmp>";
print_r($_SERVER);
print "</xmp>";
Avatar billede bonden Nybegynder
17. maj 2003 - 23:43 #15
login.php er din version af koden
Avatar billede erikjacobsen Ekspert
17. maj 2003 - 23:45 #16
Nå ja ... headers....
Avatar billede bonden Nybegynder
17. maj 2003 - 23:46 #17
headers er væk;-)
Avatar billede erikjacobsen Ekspert
17. maj 2003 - 23:48 #18
Ok - PHP-AUTH kommer slet ikke med over ....
Avatar billede bonden Nybegynder
17. maj 2003 - 23:49 #19
Kan det være noget med, at de har lukket for det.
PHPmyAdmin kører med cookies istedet for http-godkendelse, har jeg lagt mærke til.
Avatar billede erikjacobsen Ekspert
17. maj 2003 - 23:50 #20
Ok - jeg har en liste i min phpinfo, der hedder

Loaded Modules:  mod_caucho, mod_php4, mod_setenvif, mod_so, mod_auth,

Det har du slet ikke ...
Avatar billede bonden Nybegynder
17. maj 2003 - 23:52 #21
Ahh - ja, det kan jeg godt se. Så kan det jo godt være, serveren ikke understøtter det.
Jeg vil støve mit engelske af og prøve at skrive til dem på supporten
Avatar billede erikjacobsen Ekspert
17. maj 2003 - 23:52 #22
Ja, det magiske ord er nok mod_auth.

Fjern lige de 3 linier jeg foreslog... det er bedst!!
Avatar billede bonden Nybegynder
17. maj 2003 - 23:57 #23
Er gjort.
Skal lige have gjort noget ved de der points - men du plejer jo ikke ville have dem;-) - eller er kursen skiftet?
Tak for hjælpen ihvertfald - problemet blev lokaliseret.
Avatar billede erikjacobsen Ekspert
17. maj 2003 - 23:59 #24
Kursen er midlertidigt skiftet - men fik jo ikke løst problemet,
så jeg frafalder.
Avatar billede bonden Nybegynder
18. maj 2003 - 00:23 #25
Lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester