Wenn der Browser eine PHP-Datei oder CGI-Datei "unbekannt" hat, dann versucht er, das an eine registrierte Applikation zu schicken. Das ist aber schon falsch, das macht ehr nur, wenn ihm der Webserver nicht sagt, dass das, was er da kriegt, eine "normale" Datei zum Anzeigen im Browser ist. Firefox geht da von ein paar mehr Voreinstellungen aus. Sprich: Du solltest mal überprüfen, was für einen Header der Server bei .php und .cgi schickt, bzw. ob der auch wirklich sauber dafür konfiguriert ist.