[apache/php] PHP Werkend krijgen onder Apache2

Pagina: 1
Acties:

  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

Topicstarter
Allereerst
Ik realiseer me dat dit het zoveelste topic hier is over dit probleem. Maar aangezien ze mij niet verder helpen zijn er waarschijnlijk nog niet genoeg topics over...

Inleiding
Vanochtend vondt ik eindelijk waarom een bepaalde website op mijn IIS localhost niet meer werkte zoals eerst; ik had de isapi module er ooit een afgegooid, weer cgi gebruikt en de gd module kan dan niet gebruikt worden; mooi, isapi module van php installeren op IIS dacht ik...
Kreeg het niet voor elkaar, "the specified module could not be found" was de foutmelding, heel google en GoT waren onduidelijk over wat de mogelijke oorzaken konden zijn en hoe dit op te lossen. Ik heb IIS 4 keer opnieuw geinstalleerd en PHP geprobeerd te installeeren, het werkte niet.

Apache 2.0.54
Toen kreeg ik het idee eens Apache te proberen daar dit me ook nog extra functionaliteiten biedt die IIS niet heeft (als ik me niet vergis url_rewrite). Na de installatie van Apache 2.0.54 werkte deze uitstekend, en de "welkomstpagina" kwam tevoorschijn. Nu alleen nog PHP toevoegen aan de httpd.conf en ik was klaar aldus de installatie instructies.

Ik voegde het volgende toe:
code:
1
2
3
LoadModule php4_module "c:/php/php4apache2.dll"
AddType application/x-httpd-php .php
PHPIniDir "c:/php"
Maar apache weigerde te starten zonder opgaaf van rede...

Google en GoT
Na heel wat geGoogled en geGoTed te hebben had ik veel verschillende adviezen gezien:
  • PHPIniDir "c:/php/" (dus met laatste slash)
  • php.ini op andere plek
  • Hele php installatie in de apache map plaatsen
  • Iets afwijkende instellingen in httpd.conf
  • Installatie van Apache 1.3.33 om te kijken of het daarmee wel werkt (ook niet)
  • En meer
Maar al deze adviezen helpen niet en met php in de httpd.conf weigerd de apache service te starten....

Waarom is iets dat als "goed" wordt aangemerkt zo slecht te combineren met iets zo vaak gebruikts als PHP?? Ik snap het niet.
En wat ik nog slechter snap is waarom er nergens een goede oplossing wordt geboden

Ik ben op zoek
Ik ben op zoek naar mensen met meer kennis van zaken die misschien de winnende tip hebben...

  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

Prachtverhaal, maar ik zie nog steeds niet wat je aan foutmeldingen tegenkomt in bijvoorbeeld je Eventlogs (want als het indiaantje niet wil starten door een config error meldt het indiaantje dat keurig).

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


  • DJSmiley
  • Registratie: Mei 2000
  • Laatst online: 17:55
Even uit mn hoofd moet je php4apache2.dll en php4ts.dll in je /system32/ map gooien, of een path verwijzing maken naar /php omdat ie ze anders niet kan vinden.

Maar idd, wat zegt je Apache log ervan? Als t indiaantje geen mooi popupje toont met zn fout, heeft t indiaantje nog wel een dagboekje waar ie stiekem in schrijft. :D

[ Voor 36% gewijzigd door DJSmiley op 10-09-2005 21:14 ]


  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

Topicstarter
BackSlash32 schreef op zaterdag 10 september 2005 @ 19:37:
Prachtverhaal, maar ik zie nog steeds niet wat je aan foutmeldingen tegenkomt in bijvoorbeeld je Eventlogs (want als het indiaantje niet wil starten door een config error meldt het indiaantje dat keurig).
Dit is vast geen keurig indiaantje, want zoals ik al zei; zonder opgaaf van rede. Ik was alleen vergeten te zeggen dat error.log en access.log beide leeg zijn. (Overigens heb ik error.log wel leeg gegooid om te kijken of er niewe relevante info bij komt omdat er wel vanalles in stond dat er weinig mee te maken leek te hebben)

Overigens bij het (niet) starten via de Apache Service Monitor krijg ik de melding "The requested operation has failed!" en meer melding geeft Apache me nergens....

DJSmiley, Ik heb PHP in mijn path staan aangezien me dit ooit eens werd aangeraden in de manual ivm upgrades...

[ Voor 11% gewijzigd door RwD op 11-09-2005 11:28 ]


  • mithras
  • Registratie: Maart 2003
  • Niet online
Wat ik moest doen was het volgende (moest ook een beetje aanklooien):
  1. onderaan httpd.conf zet je
    code:
    1
    2
    3
    4
    
    ScriptAlias /php/ "[php_root]"
     AddType application/x-httpd-php .php 
     Action application/x-httpd-php "/php/php.exe"
    LoadModule php4_module "[php_root]\php4apache2.dll"

    waarbij [php_root] bij jou dus (geloof ik) C:\php is
  2. kopieer php.ini naar C:\Windows (of C:\WINNT)
  3. tip, maar niet noodzakelijk, in httpd.conf:
    code:
    1
    
    DirectoryIndex index.php

    index.html en index.html.var staan er al bij, alleen index.php is handig om er ook bij te hebben

[ Voor 6% gewijzigd door mithras op 11-09-2005 11:42 ]


  • frickY
  • Registratie: Juli 2001
  • Laatst online: 19-08 17:34
De error.log en acces.log worden gevuld wanneer Apache eenmaal draait. Problemen met het starten van Apache zelf komen gewoon in de Event Log van Windows.

Ik had hier Apache2 + PHP5 in 10 minuutjes draaiende.
code:
1
2
3
LoadModule php5_module "modules/php5apache2.dll"
DirectoryIndex index.php index.html
AddType application/x-httpd-php .php


Gooi je php.ini gewoon in de root van Apache, of in C:\windows\

Maar ik vermoed dat Apache mis gaat op je Loadmodule regel, omdat hij de PHP-module kan vinden.
En zoals al gezegd, de PHP module heeft php4ts.dll (oid) ook nodig. Gooi die in je system32\

@Mithras86
Jij gebruikt de CGI versie van PHP. Het is aan te raden de ISAPI-module te gebruiken

[ Voor 9% gewijzigd door frickY op 11-09-2005 11:45 ]


  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

Topicstarter
Ook een beetje een vaag indiaantje, want na nogmaals de benodigde dll's na te kijken en 1 voor 1 in de c:\php map te zetten werkt ie wel. Misschien was een dll een beetje corrupt ofzo (alhoewel me dat sterk lijkt, lijkt het wel de oplossing voor wat er gebeurd is).

Maar met andere woorden, probleem 1 is opgelost zonder nog verdere aanpassingen te hoeven maken, ik denk dat de andere tips dus afdoende zijn.

Maar toch nog een probleem
Ik installeerde dit hele gebeuren omdat ik de GD module wilde draaien van PHP. En in die zin ben ik nog niet geslaagd:
code:
1
2
3
4
5
6
7
[s][Sun Sep 11 11:38:35 2005] [notice] Apache/2.0.54 (Win32) PHP/4.4.0 configured -- resuming normal operations
[Sun Sep 11 11:38:35 2005] [notice] Server built: Apr 16 2005 14:25:31
[Sun Sep 11 11:38:35 2005] [notice] Parent: Created child process 2824
PHP Warning:  Unknown(): Unable to load dynamic library 'c:\\PHP\\extentions\\php_gd2.dll' - The specified module could not be found.\r\n in Unknown on line 0
[Sun Sep 11 11:38:36 2005] [notice] Child 2824: Child process is running
[Sun Sep 11 11:38:36 2005] [notice] Child 2824: Acquired the start mutex.
[Sun Sep 11 11:38:36 2005] [notice] Child 2824: Starting 250 worker threads.[/s]
In de php.ini staat het pad met enkele slashes ipv dubbele, en ik heb ook met forward slashes geprobeerd (zoals httpd.conf) en met een trailing slash. De aangegeven locatie is de juiste locatie en de toegangsrechten voor Everyone staan op full controll O-)

Maar dit probleem is net 5 minuten oud, ik kan er zelf naar Googlen. Uiteraard ben ik niet vies van een "doe dit en probleem is weg" reply B) .


Dit laatste probleem was een stomme fout van mij |:(

[ Voor 5% gewijzigd door RwD op 11-09-2005 11:54 ]


  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

Topicstarter
Ok, het is misschien een tijd geleden dat ik dit topic opende, maar nu bij een herinstallatie van XP (en dus ook PHP en Apache) dook het probleem weer op maar bood mijn eigen topic helemaal geen uitkomst.

Ik heb wel op een andere wijze het probleem opgelost;
Ik vermoed dat omdat PHP als module in Apache geladen wordt sommige dll's niet gevonden worden. Als alle bestanden uit de "dlls" map naar de system32 map gekopieerd worden verdwijnt het probleem en ishet indiaantje weer stil en braaaaf ;)

(hopelijk heeft nu iemand wel iets aan dit topic ;))

  • Icey
  • Registratie: November 2001
  • Laatst online: 19-08 10:39
Ikzelf heb er een handleiding voor geschreven. Ik geef altijd zelf de extension_dir mee in de php.ini en ben verder eigenlijk nog nooit echt problemen tegengekomen.

  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

Topicstarter
Ja, maar de eerste regel in je handleiding heeft het over PHP5 en dat is niet dezelfde als die ik gebruik. (Ik geloof niet dat ik het ergens duidelijk zeg, maar het is wel uit de tekst te halen; de problemen zijn met php 4. En PHP 4.4.0 in mijn specifieke geval)

Dit probleem duikt vaak op als je er even naar gaat zoeken op Google en er staat zelden een oplossing bij. Daarom heb ik de oplossing die voor mij werkte toch maar even vermeld. Hopelijk bespaar ik iemand een hoofdpijn van hier tot Tokio :+

  • DeTeraarist
  • Registratie: November 2000
  • Laatst online: 18-08 02:18

DeTeraarist

#Boots2Asses

Probeer het eens door je php map in je path te zetten. Hoef je ook geen onzin meer in je windows/system map te zetten.

Soms, als ik heel stil ben, kan ik de zon horen schijnen


  • BalusC
  • Registratie: Oktober 2000
  • Niet online

BalusC

Carpe diem

Hierover heb ik ook een tutorial geschreven :) Tutorial: Apache 2.0, PHP 5.1 en MySQL 5.0 op Windows

En in de FAQ van dit subforum staat ook een tutorial: [rml][ Howto] Apache, PHP, MySQL, .htaccess & Virtual Hosts[/rml]
Pagina: 1