Avatar billede lasseriis Nybegynder
22. august 2002 - 12:24 Der er 14 kommentarer og
1 løsning

w2k, apache og php 4.2.x

Hej
(ved godt det er uhørt at køre php i M$ windoze, men siderne skal jo testet i IE også :)

Jeg har forsøgt at opdatere min version af php
derhjemme. Jeg kan ikke lige huske hvad den gamle version er (sikkert 4.0.1) men den er under alle omstændigheder for gammel...
Problemet er bare at når jeg opdaterer går der altid lort i PHP.
jeg har prøvet disse opsætninger:

Apache 1.3.26 + php 4.2.1/2 som sapi-modul: istedet for at vise siden mener browsere at de skal gemme filen. filen indeholder kildekoden til scriptet.
Apache 1.3.26 + php 4.2.1/2 som cgi: Scriptene parses, men alle variabler der forsøges at sættes som cookies eller indsættes som GET-værdi bliver ikke sat.
Apache 2.0.40 + php 4.2.2 som sapi: "modulet kunne ikke findes" eller "processen kunne ikke findes" eller noget i den dur....

Er der nogen der kan give mig en sammensætning af apache og php der virker i windows 2000? Helst med php som sapi-modul, men en cgi-opsætning er også fin.

For jeg kan sgu ikke få lortet til at du, men hvis jeg kan få en sammensætning der i hvert fald burde virke, så skulle det da være lidt lettere.
Avatar billede cbolvig Nybegynder
22. august 2002 - 12:39 #1
Nærlæs din egen PHP's install.txt for at være helt sikker på mine forslag.
Check dine konfigurationsfiler. Og tilret stierne til dit behov.

Mine konfigurationsfiler ser sådan ud i CGI-opsætning:

"apache.conf"
.......
#LoadModule php4_module dll/php4apache.dll
#AddModule mod_php4.c
#AddType application/x-httpd-php .php
  ScriptAlias /php/ "c:/php/"
  AddType application/x-httpd-php .php
  Action application/x-httpd-php "/php/php.exe"
..........


"php.ini":
.......
;;;;;;;;;;;;;;;;;;;;
; Language Options ;
;;;;;;;;;;;;;;;;;;;;

; Enable the PHP scripting language engine under Apache.
engine = On
.......

I øvrigt synes jeg at min CGI virker mere stabilt end SAPI. Min CGI er aldrig braget ned mens SAPI let har gjort det.
Win2000 SP3, PHP 4.2.2
Avatar billede sukos Juniormester
22. august 2002 - 17:08 #2
Har prøvet at lave en vejledning:

http://www.sukos.dk/apache/apache_php.shtml

Men ellers så er det fordi du har lavet noget forkert, når filen bliver sendt til download!
Har tidligere kørt PHP som CGI, og det er da skod ved siden af LoadModule!
PHP'en af vikles hurtigere nu, og der er langt federe "features" som div. extensions, nemmere opsætning af brugere med PhpMyadmin.

at den skulle gå ned i utide, må da vist være dårlig kodning?
Eller fordi den er afviklet på IIS?
PHP som sapi funker perfect på apache!
Avatar billede lasseriis Nybegynder
22. august 2002 - 19:18 #3
Har tjekket min php.ini og engine står skam til on! (hvilken apache bruger du cbolvig?)

Og sukos' meget fine vejledning er jo sådan set bare install.txt på dansk.

Jeg kan altså pt vælge mellem et sapi modul som fremprovokerer gale headers (som gør at browsere prøver at gemme lortet) og som ikke engang parser koden. Eller en cgi opsætning der ikke kan bruge variabler, hvor meget er der egentlig ved php hvis man ikke kan sætte variabler?
Avatar billede lasseriis Nybegynder
22. august 2002 - 19:33 #4
Er der ikke nogen der har haft det samme problem?

Jeg prøvede, som der i sukos' vejledning stod at udelade linjen med mod_php4.c , men det gav det samme resultat: lamme headers...
Avatar billede cbolvig Nybegynder
23. august 2002 - 10:55 #5
->sukos
IIS er min primære webserver. Apache på w2k er kun eksperimentel for mig og jeg kan lige nu kun få php-CGI til at virke, ikke SAPI. Hvor eventloggen for SAPI forsøg siger:
"The Apache service named  reported the following error:
>>> Cannot load C:/php/sapi/php4apache.dll into server: The specified module could not be found. ". Modulet _ligger_ der. Måske er det win32 kompileringen af Apache, som vender folder-slashene og giver problemer ?
Jeg har ikke dette som et aktuelt problem og vil ikke dyrke det nærmere. I parentes bemærket er dette min w2k professional workstation dette gælder. Jeg har ikke Apache på w2k server. Der kan måske være en nuance.
Avatar billede cbolvig Nybegynder
23. august 2002 - 10:55 #6
! JEG er Linuxbox entusiast om nogen, men den virkelige verden vil noget andet
Avatar billede cbolvig Nybegynder
23. august 2002 - 11:04 #7
Jeg har testet Apache 2.0.36 på Win2000 SP3 workstation med PHP 4.2.2 som CGI. PhpMyAdmin virker også fint.
Følgende kode virker efter hensigten med GET vars og cookies. Jeg forstod på dit spørgsmål at det var disse to elementer som gav dig problemer.

<?if (isset($_COOKIE["TestCookie"])) setcookie("TestCookie", "Napoleonskage");
else     setcookie ("TestCookie", "Gulerodskage");
$tekst=$_GET[tekst];
if (!isset($tekst)) {
    $htmlout.="<form method=get action=>";
    $htmlout.="<input type=text name=tekst>";
    $htmlout.="</form>";
    $htmlout.= "<p>1. TestCookie = ".$_COOKIE["TestCookie"];
}
else {
    $htmlout.= "<p>2. TestCookie = ".$HTTP_COOKIE_VARS["TestCookie"];
    $htmlout.= "<p>GET var = $tekst";
}
echo $htmlout;
?>

Det med dine gale headers kan skyldes at du ikke håndterer cookies som det allerallerførste i dit script inden der sendes nogetsomhelst til klientens browser. "Cookies must be sent before any other headers are sent (this is a restriction of cookies, not PHP). "
Avatar billede lasseriis Nybegynder
23. august 2002 - 11:22 #8
Jeg tror nu bare det er alle variabler, og de gale headers har slet ikke noget med php at gøre, det er apache som ikke sender text/html som "type" når den svarer.
Fejlen som du nævner med apache, er præcis den samme jeg får! Jeg bruger også 2000 professional/workstation....

Men fandme om jeg gider til at bruge IIS igen, den stinker(pisse langsomme svartider)......

Er der virkelig ingen der har php(nyere end 4.0.1 eller hvad jeg nu kører med) til at køre gennem apache på en win2k?
Avatar billede cbolvig Nybegynder
23. august 2002 - 11:43 #9
Så tror har du et af de der irriterende udefinerbare lokale problemer som vi alle kender på em M$-blackbox. En reinstallation af hele makinen kan være den sidste, og hurtigste, udvej.
Jeg deler dine frustrationer. Jeg ville også hellere bruge Apache, på en Linuxbox, i Intranetsammenhænge på et w2k server baseret LAN. Men jeg mangler at få løst NTLM-authentication- og "Index Server" problematikker. Derfor er jeg parkeret på W2k IIS. Jeg kan ikke hjælpe dig yderligere.
Avatar billede cbolvig Nybegynder
23. august 2002 - 11:45 #10
... og skal selvfølgelig ingen points have ;) Kald bare spørgsmålet hjem selv.
Avatar billede lasseriis Nybegynder
23. august 2002 - 13:02 #11
Ja, jeg er også bange for jeg har en eller anden latterlig fejl.....jeg gider bare ikke til at reinstallere, nu har lortet sgu kørt smukt i 2-3 år (det må man alligevel give MS, deres 2000 dur(alt det andet er lort)). Men så skal jeg også have forstørret en NTFS-partition, på bekostning af en anden (med alt mit  data på)(det er virkelig ikke sjovt, hvis der går lort i det)............røv

åhhh nej, jeg gider ikke.....lort

Nå, men det kan være det er den eneste løsning........
Avatar billede cbolvig Nybegynder
23. august 2002 - 13:36 #12
så sååå - måske er du heldig at det hjælper blot at reinstallere w2k i dit eksisterende setup. Det havde jeg held med engang da der skete sære ting. Øh, og backup lige først. Jeg har ikke oplevet at en w2k arbejdsstation har holdt så længe som din, uden at hoste hæst. Medmindre man ikke  installerer nogetsomhelst andet end w2k og kun benytter "notepad". Så kan jeg forestille mig det. Men ellers må jeg give dig ret, w2k er også det bedste M$OS jeg har set. Pøj Pøj og god wekkend.
Avatar billede sukos Juniormester
23. august 2002 - 16:21 #13
hmm, lyder som om en reinstall ikke vil skade!

At der er ged i den med PHP som module, ............... reinstall!!!
Avatar billede lasseriis Nybegynder
24. august 2002 - 11:21 #14
Jeg har ellers gjort fremskridt....det ser ud til at php og apache slet ikke kan sammen, medmindre de begge to er installeret i c:\. Spørg mig ikke hvorfor , men sådan er de bare...
Nu har jeg da fået php til at køre halvt, i den forstand at variabler som jeg sætter i et script rent faktisk bliver sat!
Men min setcookie() funger ikke en skid, og $HTTP_USER_AGENT og den slags bliver ikke sat......

møg....hvorfor skal min w2k skabe sig så pisse meget. M$ har nok lagt noget kode ind der får lortet til at gå i udu, hvis maskinen har kørt i mere end 2 år, eller man kommer til at bruge Open Source software :)

Nå jeg vender tilbage når jeg har fundet en løsning (læs: reinstalleret) så andre også kan få glæde af dette spørgsmål.(selvom jeg er den eneste i verden der har problemet)
Avatar billede lasseriis Nybegynder
08. april 2003 - 10:47 #15
Nå, langt tid siden. Men såvidt jeg husker fik den en reinstall, en 1.x version af Apache (2'eren kunne vist ikke) og så ellers både php og apache på c:. Så kører det vist....

point til mig selv...
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