Domanda

Il sistema bugzilla (basato su perl) ha una funzione per accedere automaticamente usando una variabile d'ambiente del server http. Se inserisci l'ID o il nome utente corretti, accedi automaticamente.

Il mio server esegue Joomla (basato su PHP) e ha tutte le informazioni su chi ha effettuato l'accesso. Esegue bugzilla in un sub-frame.

Quindi, come posso impostare questo valore ambientale da uno script PHP?

Per dirla in un altro modo, in che modo il seguente script restituisce la mia variabile set propria altrove in una sessione da PHP:

#!/usr/bin/perl -wT
print "Content-type: text/html\n\n";
while (($key, $val) = each %ENV) {
        print "$key = $val<BR>\n";
}
È stato utile?

Soluzione

Questa è solo un'ipotesi, ma (supponendo che tu stia utilizzando Apache2) puoi impostare le variabili di ambiente usando apache_setenv () . Tuttavia, questo durerà solo per la durata della richiesta http corrente, quindi non sono sicuro di come la faccia funzionare: la richiesta della pagina bugzilla dal frame del browser sarà considerata completamente separata da Apache. Potresti essere in grado di utilizzare virtual () per invocare una sotto-richiesta a Bugzilla che dovrebbe quindi poter vedere quella variabile d'ambiente. Non sono sicuro se avresti bisogno di farlo per ogni richiesta della pagina Bugzilla o solo per quella che avvia il login.

Scusate se ho perso il punto o ho sbagliato molto

Altri suggerimenti

Non sono sicuro di cosa devi fare per creare la sessione in Bugzilla, ma so cosa deve succedere alla fine di Joomla! Ti consigliamo di creare un plug-in utente che risponda all'evento onLoginUser . Per un esempio di ciò in azione, dai un'occhiata alla funzione onLoginUser in plugins / user / joomla.php.

(Nota, questo è solo per Joomla! 1.5)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top