php authenticatie werkt niet meer na verplaatsen site naar andere server

Status
Niet open voor verdere reacties.

peps03

Gebruiker
Lid geworden
20 nov 2009
Berichten
93
Hoi!
Ik gebruikt dit login script op een pagina. Dit werkte prima tot ik de site verplaatste naar een andere server.

Nu kan ik ineens niet meer inloggen. Wanneer ik dit script verwijder uit de pagina, verschijnt de pagina wel, dus daar zit het probleem niet.

beide servers draaien op apache.

chrome geeft soms deze error:
The webpage at http://example.com/cms/ might be temporarily down or it may have moved permanently to a new web address.
Error 15 (net::ERR_SOCKET_NOT_CONNECTED): Unknown error.

Waar kan dit aan liggen?

Alvast bedankt!

PHP:
<?

//Site username
define ("USERN", "admin");
//Site password
define ("PASSW", "pass");

if(isset($_GET['logout'])){
        unset($_SESSION["realm"]);
        header("HTTP/1.0 401 Unauthorized");
        session_destroy() ;
        echo "<meta http-equiv=\"refresh\" content=\"0;URL=http://example.com/cms/logout/\" />";
        exit;
}
if (!isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW']) || !isset($_SESSION['realm'])) {
        $_SESSION['realm'] = mt_rand( 1, 10000 );
        header("WWW-Authenticate: Basic realm=".$_SESSION['realm']);
        header("HTTP/1.0 401 Unauthorized");
        $_SESSION["realm"] = true;
        echo "<meta http-equiv=\"refresh\" content=\"0;URL=http://example.com/cms/logout-wrong/\" />";
        exit;
}else{
  if($_SERVER['PHP_AUTH_USER'] == USERN && $_SERVER['PHP_AUTH_PW'] == PASSW){
        echo "<h1>".SITETITLE." - CMS</h1>";
        echo "<p>Je bent ingelogd als: <b>".USERN."</b> [<a href='http://example.com/cms/index.php?logout'  class=\"menu\">Logout</a>]";
        echo " OF: Sluit de browser om uit te loggen. [<a href='http://example.com/cms/index.php' target=\"_self\" class=\"menu\">Terug naar het overzicht</a>]</p>";
        echo "<hr width=\"" .HRWIDTH. "\" align=\"left\" color=\"#FF00FF\">";
  }else{
    unset($_SESSION["realm"]);
    session_destroy() ;
    header("Location: " . "http://example.com/cms/");
  exit;
  }
}
?>
 
Al je linkjes verwijzen hard coded naar een domein; dat gaat voor problemen zorgen als je het domein verplaatst. Het is beter om alle verwijzingen relatief te doen. Grote kans dat je probleem dan ook verholpen is.
 
dank voor je reactie!

De domeinnaam heb ik wel aangepast. inmiddels had ik ze ook al relatief gemaakt.
Hielp niet.

de site wordt gehost bij valueweb. ook andere authentication scripts die ik heb geprobeerd doen het niet daar.
 
is het niet dat ze nog op een oude versie van php draaien!
 
zodra je verkast naar een andere hosting moet je ook in je config files wel aangeven op welk domein je zit. zodra je dit niet doet krijg je vaak errors dat de server niet te bereiken is. kijk even in je config file of het domein nog op je oude server staat. en wijzig dit

regards,
sbasti25
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan