/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
Apache kompileringsproblemer
Fra : Kim Emax


Dato : 29-12-03 08:53

Hey

Jeg har spurgt i apache gruppen uden svar, måske hører spørgsmålet bedre
hjemme her?

Jeg prøver at kompilere Apache i hånden, men det driller en del. Jeg bruger
pt Troels Arvins RPM pakker til install af PHP og Apache, men da der ikke er
udsigt til flere updates derfra, så vil jeg nu installere Apache med DSO.
Jeg har før kompileret Apache og php fra bunden uden problemer, men aldrig
med ekstra parametre på og det var uden DSO og nu driller det sgu, når jeg
prøver. Er der noget i min kompileringsprocess, der er galt?

cd apache_1.3.29
../configure --prefix=/usr/local --enable-shared=max --enable-module=all

cd ../php-4.3.4

'./configure' --with-i386-redhat-linux '--with-mysql=/usr'
'--with-apxs=/usr/local/bin/apxs' '--enable-trans-sid' '--with-gd'
'--enable-gd-native-ttf' '--with-zlib-dir' '--with-png-dir'
'--enable-gd-imgstrttf' '--with-openssl=/usr' '--enable-ftp'
'--with-freetype-dir'
'--with-expat-dir=/usr' --enable-exif --with-regex=system --with-ttf --with-
jpeg-dir --enable-track-vars --with-xml --enable-magic-quotes --enable-safe-
mode --with-config-file-path=/usr/local/lib/php --with-gettext --with-dom --
with-imap --with-kerberos

make
make install

cd ../apache_1.3.29
../configure --prefix=/usr/local --activate-module=src/modules/php4/libphp4.a
--enable-module=so --enable-module=access --enable-module=actions --enable-
module=auth --enable-module=cgi --enable-module=dir --enable-module=env --en
able-module=access --enable-module=expires --enable-module=headers --enable-
module=imap --enable-module=include --enable-module=info --enable-module=log
_agent --enable-module=log_config --enable-module=log_referer --enable-modul
e=mime --enable-module=negotiation --enable-module=rewrite --enable-module=s
etenvif --enable-module=status --enable-module=userdir --enable-module=vhost
_alias

make
make install

cd ../php-4.3.4
cp php.ini-dist /usr/local/lib/php.ini

Jeg spekulerer på om man skal aktivere flere moduler end bare php modulet?
og om det er nødvendigt at have
enable-shared=max --enable-module=all --enable-access med anden gang?

Jeg har disse liner, der vedrører php:

LoadModule php4_module libexec/libphp4.so
AddModule mod_php4.c
AddType application/x-httpd-php .php .php4 .php3 .phtml

Her kører serveren fint, dog parses php filer ikke

når jeg tilføjer:
AddType application/x-httpd-php-source .phps
så crasher apache, error_log viser:
[Sat Dec 27 18:48:25 2003] [notice] child pid 7870 exit signal
Segmentation fault (11)
[Sat Dec 27 18:48:25 2003] [notice] child pid 7869 exit signal
Segmentation fault (11)
[Sat Dec 27 18:48:25 2003] [notice] child pid 7868 exit signal
Segmentation fault (11)
[Sat Dec 27 18:48:25 2003] [notice] child pid 7867 exit signal
Segmentation fault (11)
og når jeg udkommenterer den er det ikke nok, apacher dør igen, så snart jeg
loader en php fil, jeg må også udkommentere:
AddType application/x-httpd-php .php .php4 .php3 .phtml

hvorefter serveren kører, viser .php filer, men de parses ikke af php
Nogen ideer?

En anden tanke: Har det nogen betydning at jeg starter en VH blok med
<VirtualHost 192.168.1.4>, men at det er en anden IP, jeg bruger
pt(testmaskine?)

Det ville være rart med lidt guidance her

--
Take Care
Kim Emax - master|minds: http://www.masterminds.dk - Vi tænker IT for dig...
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



 
 
Tonni Aagesen (29-12-2003)
Kommentar
Fra : Tonni Aagesen


Dato : 29-12-03 12:41

Kim Emax wrote:

> LoadModule php4_module libexec/libphp4.so
> AddModule mod_php4.c

Sikkert ikke løsningen, men er AddModule nødvendig samtidigt med
LoadModule? Jeg mener at kunne huske, at det gav lignende problemer for
mig long long time ago - bare med en connector til tomcat.

Mvh
Tonni

Kim Emax (29-12-2003)
Kommentar
Fra : Kim Emax


Dato : 29-12-03 18:51

Tonni Aagesen wrote:
> Kim Emax wrote:
>
> > LoadModule php4_module libexec/libphp4.so
> > AddModule mod_php4.c
>
> Sikkert ikke løsningen, men er AddModule nødvendig samtidigt med
> LoadModule? Jeg mener at kunne huske, at det gav lignende problemer
> for mig long long time ago - bare med en connector til tomcat.

Jeg er selv lidt i tvivl, men i min nuværende httpd.conf står:

# [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE UPDATE THIS, TOO]
lige ovenover AddModule, så det vil jeg tro, der skal?

--
Take Care
Kim Emax - master|minds - Vi tænker IT for dig...
http://www.masterminds.dk - http://www.emax.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Jacob Bunk Nielsen (29-12-2003)
Kommentar
Fra : Jacob Bunk Nielsen


Dato : 29-12-03 14:35

"Kim Emax" <newsgroup@remove-emax.dk> writes:

> cd apache_1.3.29
> ./configure --prefix=/usr/local --enable-shared=max --enable-module=all

Jeg plejer at gøre:

../configure --prefix=/usr/local --activate-module=src/modules/standard/mod_so.c
[ og samme for eventuelle andre moduler jeg skal bruge fx mod_rewrite.c ]
make && make install

> cd ../php-4.3.4

.... og så:
../configure --with-apxs=/usr/local/bin/apxs ...
make && make install

cp php.ini-dist /usr/local/lib/php.ini

/usr/local/bin/apachectl start

Hvad gør '--with-i386-redhat-linux' i øvrigt i din configure til PHP?
Den har jeg aldrig set før.

Der er ingen grund til at du skal køre configure til Apache igen
bagefter når du har oversat den med DSO-support og de moduler du
ellers skal bruge. Det gør det også så dejlig let når du senere skal
opgradere PHP uden at opgradere Apache eller omvendt.

> En anden tanke: Har det nogen betydning at jeg starter en VH blok med
> <VirtualHost 192.168.1.4>, men at det er en anden IP, jeg bruger
> pt(testmaskine?)

Nej - slet ikke hvis dine PHP-specifikke ting i httpd.conf står i den
globale del af httpd.conf.

--
Jacob - www.bunk.cc
You are taking yourself far too seriously.

Kim Emax (29-12-2003)
Kommentar
Fra : Kim Emax


Dato : 29-12-03 18:48

Jacob Bunk Nielsen wrote:

> Jeg plejer at gøre:
>
> ./configure --prefix=/usr/local
> --activate-module=src/modules/standard/mod_so.c [ og samme for
> eventuelle andre moduler jeg skal bruge fx mod_rewrite.c ] make &&

Du skulle kunne lave --enable-module=all, som så tager alle... Men jeg har
jo netop ikke brugt activate-module til andet end php og måske ikke korrekt?
Hvad gør du så for at få php filer til at blive parset?

Men jeg har ikke prøvet det, du der gør med at angive stien til .c filen,
kun til .so filen, så det vil jeg også lige prøve.

> Hvad gør '--with-i386-redhat-linux' i øvrigt i din configure til PHP?
> Den har jeg aldrig set før.

Det er et leftover fra Arvins pakker, jeg har bare prøvet at genskabe samme
konfiguration. Den skal også væk, da kompileringen siger at der er tale om
en 586. Som jeg opfatter det, så fortæller man php, hvilket system det
bliver kompilet på.

> Der er ingen grund til at du skal køre configure til Apache igen
> bagefter når du har oversat den med DSO-support og de moduler du
> ellers skal bruge.

Super, prøver lige at vende lidt om på tingene

> Det gør det også så dejlig let når du senere skal
> opgradere PHP uden at opgradere Apache eller omvendt.

Det var også hele ideen med at lave kompileringen selv...

> > En anden tanke: Har det nogen betydning at jeg starter en VH blok
> > med <VirtualHost 192.168.1.4>, men at det er en anden IP, jeg bruger
> > pt(testmaskine?)
>
> Nej - slet ikke hvis dine PHP-specifikke ting i httpd.conf står i den
> globale del af httpd.conf.

jeg tilgår den via IPen, da den slet ikke ville svare på VH blokkene,
eftersom http trafik udefra går til den kørende server. Jeg kunne
selvfølgelig rette i min host fil, meeen det ville være spild af tid

--
Take Care
Kim Emax - master|minds: http://www.masterminds.dk - Vi tænker IT for
dig... http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Jacob Bunk Nielsen (29-12-2003)
Kommentar
Fra : Jacob Bunk Nielsen


Dato : 29-12-03 18:58

"Kim Emax" <newsgroup@remove-emax.dk> writes:
> Jacob Bunk Nielsen wrote:
>
> Du skulle kunne lave --enable-module=all, som så tager alle... Men jeg har
> jo netop ikke brugt activate-module til andet end php og måske ikke korrekt?

Den tager selv nogle standard-moduler med. Ud over dem har jeg aldrig
haft brug for andet end mod_so og mod_rewrite.

> Hvad gør du så for at få php filer til at blive parset?

LoadModule php4_module libexec/libphp4.so

Og så i en '<IfModule mod_mime.c>'-blok:

AddType application/x-httpd-php .php
AddType application/x-httpd-php .php4
AddType application/x-httpd-php .phtml
AddType application/x-httpd-php .php3
AddType application/x-httpd-php-source .phps

.... men check lige om 'make install' af din PHP ikke gør noget i den
stil for dig. Det kan jeg ikke huske - det er flere år siden jeg satte
det op - før der var RPM'er af PHP der var værd at bruge. Jeg har så
bare opgraderet løbende siden.

>> Det gør det også så dejlig let når du senere skal
>> opgradere PHP uden at opgradere Apache eller omvendt.
>
> Det var også hele ideen med at lave kompileringen selv...

Hvorfor så ikke bare bruge de binære pakker der ret sikkert findes til
din distribution nu om dage?

--
Jacob - www.bunk.cc
Flee at once, all is discovered.

Kim Emax (29-12-2003)
Kommentar
Fra : Kim Emax


Dato : 29-12-03 20:58

Jacob Bunk Nielsen wrote:

> > Hvad gør du så for at få php filer til at blive parset?
>
> LoadModule php4_module libexec/libphp4.so
>
> Og så i en '<IfModule mod_mime.c>'-blok:
>
> AddType application/x-httpd-php .php
> AddType application/x-httpd-php .php4
> AddType application/x-httpd-php .phtml
> AddType application/x-httpd-php .php3
> AddType application/x-httpd-php-source .phps
>
> ... men check lige om 'make install' af din PHP ikke gør noget i den
> stil for dig. Det kan jeg ikke huske - det er flere år siden jeg satte
> det op - før der var RPM'er af PHP der var værd at bruge. Jeg har så
> bare opgraderet løbende siden.

Den laver lidt:

Installing PHP SAPI module: apache
[activating module `php4' in /usr/local/conf/httpd.conf]
cp libs/libphp4.so /usr/local/libexec/libphp4.so

Men ikke AddType, så vidt jeg kan se... har added de linier selv, du behøver
iøvrigt ikke have en linie for hver fileext...

Prøvede at kompilerede på denne måde:

cd apache_1.3.29
../configure --prefix=/usr/local --activate-module=src/modules/standard/mod_s
o.c

make
make install

cd ../php-4.3.4

'./configure' '--with-mysql=/usr' '--with-apxs=/usr/local/bin/apxs'
'--enable-trans-sid' '--with-gd' '--enable-gd-native-ttf' '--with-zlib-dir'
'--with-png-dir' '--enable-gd-imgstrttf' '--with-openssl=/usr'
'--enable-ftp' '--with-freetype-dir'
'--with-expat-dir=/usr' --enable-exif --with-regex=system --with-ttf --with-
jpeg-dir --enable-track-vars --with-xml --enable-magic-quotes --enable-safe-
mode --with-config-file-path=/usr/local/lib/php --with-gettext --with-dom --
with-imap --with-kerberos

make
make install

Det virker efter hensigten, nu skal jeg bare have php til at genndlæse
php.ini, det skal naturligvis også drille?

> Hvorfor så ikke bare bruge de binære pakker der ret sikkert findes til
> din distribution nu om dage?

Mener du en RPM?

--
Take Care
Kim Emax - master|minds - Vi tænker IT for dig...
http://www.masterminds.dk - http://www.emax.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Kim Emax (29-12-2003)
Kommentar
Fra : Kim Emax


Dato : 29-12-03 21:08

Kim Emax wrote:

> --enable-safe- mode --with-config-file-path=/usr/local/lib/php

> Det virker efter hensigten, nu skal jeg bare have php til at genndlæse
> php.ini, det skal naturligvis også drille?

måske, hvis man nu kaldte configfilen php.INI, så finder php den
ovenikøbet...

--
Take Care
Kim Emax - master|minds - Vi tænker IT for dig...
http://www.masterminds.dk - http://www.emax.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Jacob Bunk Nielsen (29-12-2003)
Kommentar
Fra : Jacob Bunk Nielsen


Dato : 29-12-03 21:03

"Kim Emax" <newsgroup@remove-emax.dk> writes:

> Prøvede at kompilerede på denne måde: [ ... ]
> Det virker efter hensigten, nu skal jeg bare have php til at genndlæse
> php.ini, det skal naturligvis også drille?

Cool. Hvad mener du med genindlæse? Den bliver da læst hver gang du
starter din webserver.

>> Hvorfor så ikke bare bruge de binære pakker der ret sikkert findes til
>> din distribution nu om dage?
>
> Mener du en RPM?

Ja, hvis du bruger en RPM-baseret distribution (fx Red Hat, Mandrake
eller SuSE).

--
Jacob - www.bunk.cc
Never ask the barber if you need a haircut.

Kim Emax (29-12-2003)
Kommentar
Fra : Kim Emax


Dato : 29-12-03 21:10

Jacob Bunk Nielsen wrote:

> Cool. Hvad mener du med genindlæse? Den bliver da læst hver gang du
> starter din webserver.

Tjek den anden posting, jeg lige har smidt

> Ja, hvis du bruger en RPM-baseret distribution (fx Red Hat, Mandrake
> eller SuSE).

kigger man på rpmfind.net, så er nyeste php til Redhat:

RedHat-9 Updates for i386 php-4.2.2-17.2.i386.rpm


Derfor

--
Take Care
Kim Emax - master|minds - Vi tænker IT for dig...
http://www.masterminds.dk - http://www.emax.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Kim Emax (29-12-2003)
Kommentar
Fra : Kim Emax


Dato : 29-12-03 22:02

Jacob Bunk Nielsen wrote:

> Cool. Hvad mener du med genindlæse? Den bliver da læst hver gang du
> starter din webserver.

Ikke destomindre, så _vil_ den ikke æde min ændring af register_globals til
"On", den insisterer på at sætte det parameter til "Off", irritende! Der er
også et par andre parametre, jeg skal rette på, før jeg kan bruge
installationen...

--
Take Care
Kim Emax - master|minds - Vi tænker IT for dig...
http://www.masterminds.dk - http://www.emax.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Jacob Bunk Nielsen (29-12-2003)
Kommentar
Fra : Jacob Bunk Nielsen


Dato : 29-12-03 23:34

"Kim Emax" <newsgroup@remove-emax.dk> writes:
> Jacob Bunk Nielsen wrote:
>
>> Cool. Hvad mener du med genindlæse? Den bliver da læst hver gang du
>> starter din webserver.
>
> Ikke destomindre, så _vil_ den ikke æde min ændring af register_globals til
> "On", den insisterer på at sætte det parameter til "Off", irritende! Der er
> også et par andre parametre, jeg skal rette på, før jeg kan bruge
> installationen...

Har du checket at det er den rigtige fil du retter i? Prøv at lave en
phpinfo(), og se hvad den skriver om hvilken konfigurationsfil den
bruger.

--
Jacob - www.bunk.cc
Paranoia doesn't mean the whole world isn't out to get you.

Kim Emax (30-12-2003)
Kommentar
Fra : Kim Emax


Dato : 30-12-03 00:01

Jacob Bunk Nielsen wrote:

> Har du checket at det er den rigtige fil du retter i? Prøv at lave en
> phpinfo(), og se hvad den skriver om hvilken konfigurationsfil den
> bruger.

Det er det:

Configuration File (php.ini) Path /usr/local/lib/php.ini


Den retter jeg i, "vi /usr/local/lib/php.ini" sætter bla.

register_globals = On
upload_max_filesize = 8M

laver en "apachectl restart" // er det nødvendigt?

men ser stadig:

register_globals Off

upload_max_filesize 2M


Skideirriternede, nu jeg har rodet med dette i over en uge og er endelig ved
at være klar til at skulle benytte svinet, så kaster den grin på mig
Eneste jeg kan læse mig frem til i php.ini er dette ("vi
/usr/local/lib/php.ini +17"):

"; This file controls many aspects of PHP's behavior. In order for PHP to
; read it, it must be named 'php.ini'. PHP looks for it in the current
; working directory, in the path designated by the environment variable
; PHPRC, and in the path that was defined in compile time (in that order)."

Hvis det første, der indlæses er det, der bliver brugt (altså ikke
overskrevet), så kan det være problemet. Men jeg kan slet ikke se, at PHPRC
er sat nogen steder...

Når jeg kompilerer PHP, så kommer der også denne besked:

"You may want to add: /usr/local/lib/php to your php.ini include_path"

den path fremgår allerede af en phpinfo(), ikke i php.ini? Kan det være
php.ini i pear diret, der spøger?

--
Take Care
Kim Emax - master|minds - Vi tænker IT for dig...
http://www.masterminds.dk - http://www.emax.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Kim Emax (30-12-2003)
Kommentar
Fra : Kim Emax


Dato : 30-12-03 01:59

Jacob Bunk Nielsen wrote:

> Har du checket at det er den rigtige fil du retter i? Prøv at lave en
> phpinfo(), og se hvad den skriver om hvilken konfigurationsfil den
> bruger.

arrrghhh... havde kigget på
denne: --with-config-file-path=/usr/local/lib/php og tænkt "hov, den hedder
sgu da php.ini, så jeg har siddet og kompilet
med: --with-config-file-path=/usr/local/lib/php.ini - siden hvornår har det
været en PATH? Nå, tæsker mig selv i søvn med dummeflade!

Tak for din hjælp.

--
Take Care
Kim Emax - master|minds - Vi tænker IT for dig...
http://www.masterminds.dk - http://www.emax.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Søg
Reklame
Statistik
Spørgsmål : 177503
Tips : 31968
Nyheder : 719565
Indlæg : 6408540
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste