PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kann einfach kein php5 installieren..



Seiten : [1] 2

alc
11.02.07, 18:38
selbst nach mehrmaligem deinstallieren von Apache-/2 , mysql, php4 ,php5 bekomme ich immer noch die meldung das ich php 4.4.2.0 installiert habe.. selbst wenn ich php4 deinstalliere.. ich versteh einfach gar nichts mehr, ein bekannter der bei ner Firma programmiert und doch recht viel Ahnung von debian hat, weiss auch nicht bescheid..




debian:/etc# apt-get remove php5
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut... Fertig
Paket php5 ist nicht installiert, wird also auch nicht entfernt
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 66 nicht aktualisiert.
debian:/etc# apt-get remove php5.0
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut... Fertig
Paket php5.0 ist nicht installiert, wird also auch nicht entfernt
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 66 nicht aktualisiert.
debian:/etc# apt-get remove php4
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut... Fertig
Paket php4 ist nicht installiert, wird also auch nicht entfernt
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 66 nicht aktualisiert.
debian:/etc# php -v
PHP 4.4.2-0.dotdeb.1 (cli) (built: Jan 13 2006 16:48:04)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
debian:/etc#


Ich weiss jetzt auch nicht was ich noch weiter schreiben soll... vielleicht hat ja einer idee? Oder evtl noch einen link zu nem tutorial zum kompletten entfernen von sämtlichen php dateien/Ordnern ? Wäre super!

distribution: Debian

edit: habe jetz mal alles was mit php zu tun hat gelöscht und jetzt definitiv kein php mehjr drauf, werde es nochmal neuinstallieren!

Edit: Habe jetzt versucht mal php5 mit fcgi zu installieren (brauche es)
(siehe: http://www.debianhowto.de/doku.php/de:howtos:sarge:apache2_php-fcgi )
beim schritt:
./configure --enable-memory-limit --enable-force-cgi-redirect \
--enable-track-vars --with-pcre-regex --with-mysql --with-mysqli --without-sqlite \
--without-mm --enable-fastcgi --enable-mbstring --enable-bcmath --prefix=/home/_USER_/php5
$ make

erhalte ich folgenden fehler (kompletter log von configuring libtool)

Configuring libtool
checking build system type... i686-pc-linux-gnu
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking how to recognise dependent libraries... pass_all
checking for object suffix... o
checking for executable suffix... no
checking for c++... no
checking for g++... no
checking for gcc... gcc
checking whether the C++ compiler (gcc ) works... no
configure: error: installation or configuration problem: C++ compiler cannot create executables.

Rain_maker
11.02.07, 20:11
checking whether the C++ compiler (gcc ) works... no
configure: error: installation or configuration problem: C++ compiler cannot create executables.

=>


dpkg -l|egrep 'gcc|c++'sagt?

Greetz,

RM

alc
11.02.07, 22:07
Hat sich erledigt , habs jetz doch hinbekommen.. lag ganz einfach daran das mir g++ gefehlt hatte

alc
11.02.07, 23:31
Oder auch nicht:

wenn ich phpmyadmin aufrufen will, werde ich gefragt wo ich die php datei speichern möchte, sprich als ob ich einen download starten will.. komisch!

carstenj
11.02.07, 23:45
Hi,

dann fehlt wahrscheinlich noch der Eintrag AddHandler x-httpd-php5 .php in deiner httpd.conf.

alc
12.02.07, 00:02
Nunja geholfen hat das nicht aber ich vermute mal das da sowieso einiges in der httpd.conf fehlt..



# This is here for backwards compatability reasons and to support
# installing 3rd party modules directly via apxs2, rather than
# through the /etc/apache2/mods-{available,enabled} mechanism.
#
#LoadModule mod_placeholder /usr/lib/apache2/modules/mod_placeholder.so
AddHandler x-httpd-php5 .php
~

ist alles was drin steht

es is alles garnicht soleicht , ich war noch nie in der situation apache etc. komplett neu einrichten zu müssen ,bzw conf dateien zu schreiben ,
was mir auch noch auffällt für den apache 2 habe ich gar keine php.ini..
wobei auch zu beachten ist das ich php5 fcgi habe, was sich im /home verzeichnis befindet, also genau so gemacht wie es hier beschrieben steht: http://www.debianhowto.de/doku.php/de:howtos:sarge:apache2_php-fcgi

Auch die sache mit dem VHOST , etc.

was ich habe:


/etc/php5/apache/php.ini
/usr/share/ucf/php5.0-cgi/etc/php5.0/cgi/php.ini
/usr/share/ucf/libapache-mod-php5.0/etc/php5.0/apache/php.ini


allerdings läuft apache2 ganz normal , sprich ich kann webseiten aufrufen etc.

MiGo
12.02.07, 07:30
Poste doch bitte mal die Ausgabe von "ls /etc/apache2/mods-*".

alc
12.02.07, 12:12
/etc/apache2# ls /etc/apache2/mods-*
/etc/apache2/mods-available:
actions.load dav_fs.load info.load proxy_http.load
asis.load dav.load ldap.load proxy.load
auth_anon.load deflate.load mem_cache.load rewrite.load
auth_dbm.load disk_cache.load mime_magic.conf speling.load
auth_digest.load expires.load mime_magic.load ssl.conf
auth_ldap.load ext_filter.load php5.0.conf ssl.load
cache.load fastcgi.conf php5.0_filter.conf suexec.load
cern_meta.load fastcgi.load php5.0_filter.load unique_id.load
cgid.conf file_cache.load php5.0.load userdir.conf
cgid.load headers.load proxy.conf userdir.load
cgi.load imap.load proxy_connect.load usertrack.load
dav_fs.conf include.load proxy_ftp.load vhost_alias.load

suck
12.02.07, 12:43
IMHO fehlt beim Aufruf von configure "--with-apxs2". Anbei mal mein Installationsscript:


./configure --prefix=/usr \
--sysconfdir=/etc \
--with-apxs2 \
--with-config-file-path=/etc \
--with-zlib \
--enable-bcmath \
--with-bz2 \
--enable-ftp \
--with-gettext \
--with-ncurses \
--with-readline \
--with-openssl \
--with-pcre-regex=/usr \
--with-openssl-dir=/usr \
--with-jpeg-dir=/usr \
--with-png-dir=/usr \
--with-zlib-dir=/usr \
--with-gmp \
--with-mysql \
--with-mysql-sock=/var/run/mysql \
--with-pdo-mysql \
--enable-sockets \
--with-iconv
make
make install
install -m644 php.ini-recommended /etc/php.ini

alc
12.02.07, 12:56
ssssssssss

alc
12.02.07, 13:06
Beim ./configure erhalte ich folgenden fehler in der Ausgabe am Schluss:


Configuring extensions
checking whether to enable LIBXML support... yes
checking libxml2 install dir... no
checking for xml2-config path... (cached) /usr/bin/xml2-config
checking whether libxml build works... (cached) yes
checking for OpenSSL support... yes
checking for Kerberos support... no
checking for DSA_get_default_method in -lssl... yes
checking for pkg-config... no
checking for OpenSSL version... >= 0.9.6
checking for CRYPTO_free in -lcrypto... yes
checking for SSL_CTX_set_ssl_version in -lssl... yes
checking for PCRE support... yes
configure: error: The PCRE extension requires PCRE library version >= 6.6


dann bei make:


s_fastcgi'
sapi/cgi/cgi_main.o(.text+0x878):/home/php5_src/php-5.2.1/sapi/cgi/cgi_main.c:548: undefined reference to `fcgi_write'
sapi/cgi/cgi_main.o(.text+0x12a0): In function `main':
/home/php5_src/php-5.2.1/sapi/cgi/cgi_main.c:1138: undefined reference to `fcgi_is_fastcgi'
sapi/cgi/cgi_main.o(.text+0x1655):/home/php5_src/php-5.2.1/sapi/cgi/cgi_main.c:1335: undefined reference to `fcgi_listen'
sapi/cgi/cgi_main.o(.text+0x166e):/home/php5_src/php-5.2.1/sapi/cgi/cgi_main.c:1344: undefined reference to `fcgi_is_fastcgi'
sapi/cgi/cgi_main.o(.text+0x16f6):/home/php5_src/php-5.2.1/sapi/cgi/cgi_main.c:1362: undefined reference to `fcgi_init_request'
sapi/cgi/cgi_main.o(.text+0x17e7):/home/php5_src/php-5.2.1/sapi/cgi/cgi_main.c:1470: undefined reference to `fcgi_accept_request'
sapi/cgi/cgi_main.o(.text+0x1c9f):/home/php5_src/php-5.2.1/sapi/cgi/cgi_main.c:1817: undefined reference to `fcgi_finish_request'
sapi/cgi/cgi_main.o(.text+0x1eda):/home/php5_src/php-5.2.1/sapi/cgi/cgi_main.c:1675: undefined reference to `fcgi_finish_request'
sapi/cgi/cgi_main.o(.text+0x2209):/home/php5_src/php-5.2.1/sapi/cgi/cgi_main.c:1332: undefined reference to `fcgi_listen'
collect2: ld returned 1 exit status
make: *** [sapi/cgi/php] Fehler 1


bei make install ebenfalls den gleichen output am schluss

suck
12.02.07, 13:11
checking for PCRE support... yes
configure: error: The PCRE extension requires PCRE library version >= 6.6
Dann lass mal das "=/usr" in "--with-pcre-regex=/usr" weg.

Da der von Dir gepostete configure Aufruf mit "--with-pcre-regex" ja scheinbar funktionierte, ist pcre bei Dir installiert. Der Aufruf funktionierte doch, oder hast Du ihn noch abgeändert btw. die Zeile entfernt?

alc
12.02.07, 13:28
habe das versucht, jedoch erhalte ich den gleichen fehler. ich habe nichts an dem aufruf geändert, auch versucht das =usr \ wegzulassen, ohne Erfolg.
Auch habe ich es eben mit pfadangabe bei --with-apxs2 versucht - ohne erfolg

Ich hab gerade nochmal lampp laufen lassen und da hatte vor der installation von apache2 mit php5fcgi http://localhost/phpmyadmin funktioniert, jedoch wenn ich jetzt phpmyadmin aufrufe , lädt er sich wieder ne phpdatei runter.

irgendeine Konfigurationsdatei muss doch während der installation von apache2 gelöscht worden sein.. wenn ich mir z.b die httpd.conf von apache anschaue, da stehn massenweise pfade etc. drin, die httpd.conf vom apache2 jedoch, enthält nur die von mir weiter oben geposteten inhalte

suck
12.02.07, 13:56
Sorry, vergiss das mit "--with-apxs2" wieder ganz schnell! Dein Howto nutzt eine andere Möglichkeit PHP anzusprechen, die ich noch nicht kannte. Die beiden Möglichkeiten werden in Kaptitel 2 (Vorüberlegungen / Einleitung) miteinander verglichen.

Hast Du die fastcgi.load nach Anleitung angepasst und apacha neugestartet?

alc
12.02.07, 14:09
ja die datei hatte ich angepasst, das modul aktiviert und anschliessend apache neugestartet

suck
12.02.07, 14:14
Funktionierte denn auch der unten in Kapitel 7 erwähnte Test?

suck
12.02.07, 14:25
So, jetzt habe ich Anleitung komplett überflogen. Ich denke das in Kapitel 7 was schief gegangen ist. Laut deinem Beitrag #8 gibt es ja gar keine Dateien im Verzeichnis /etc/apache2/mods-enabled! Es gibt nichtmal das Verzeichnis.

alc
12.02.07, 14:26
welchen test meinst du bitte genau?

doch die gibts es und zwar

@actions.load
@cgid.conf
@cgid.load
@fastcgi.conf
@fastcgi.load
@suexec.laod
@userdir.conf
@userdir.load

allerdings sagt das howto auch folgendes:



# In conf legen wir saemtliche Conf-Files ab. Wichtig ist, dass alle Files, zB php.ini root:root haben

Welche conf files müssen denn nun dort alle rein?

suck
12.02.07, 14:33
Dann hast Du auf die Frage in #7 aber nicht die gesamte Ausgabe gepostet.

Es sollten keine Fehlermeldungen erscheinen, und wenn man zB eine Datei aufruft, die nicht existiert, sollte folgende Server-Signatur zu sehen sein:
(http://www.linuxforen.de/forums/)
Apache/2.0.XX (Debian GNU/Linux) mod_fastcgi/mod_fastcgi-SNAP-0404142202 Server at domain.de Port 80
(http://www.linuxforen.de/forums/)
(http://www.linuxforen.de/forums/)

Mist: Ich war jetzt bei dieser Anleitung: http://archiv.debianhowto.de/de/apache2-phpfcgi-sarge/apache2-phpfcgi_apache2_config.html

alc
12.02.07, 14:45
Apache/2.0.XX (Debian GNU/Linux) mod_fastcgi/mod_fastcgi-SNAP-0404142202 Server at domain.de Port 80

genau diese Ausgabe erhalte ich ja auch wenn ich den hostnamen im browser eingebe, und eben einen 404 falls es die datei nicht gibt

suck
12.02.07, 15:09
OK, fängen wir am besten mal ganz vorne an..

Einen Apache 1 hast du nicht installiert und der Apache 2.0 (nicht 2.2, oder?) sucht seine Konfigurationsdateien in /etc/apache2.
Schau doch mal bitte, ob es noch wo anders eine httpd.conf gibt. In der /etc/apache2/httpd.conf steht ja, dass diese Datei nur noch wegen der Abwärtskompatibiliät existiert.

suck
12.02.07, 15:14
AHA! Ich habe was gefunden:
In Debian und Gentoo wird darüberhinaus der Dateiname httpd.conf gar nicht mehr verwendet, sie heißt jetzt apache2.conf

Diese Datei musst Du also bearbeiten.. (ist ganz gut erklärt)

Die Zeile aus #5 gehört dann wohl hierher..

alc
12.02.07, 15:15
also, ich habe Apache/2.0.54 installiert, apache 1 ist nicht installiert
folgende httpd.conf dateien habe ich:




/etc/apache/httpd.conf
/etc/apache2/httpd.conf
/opt/lampp/etc/original/httpd.conf
/opt/lampp/etc/httpd.conf
/usr/share/apache/default-configs/apache-perl/httpd.conf
/usr/share/apache/default-configs/apache/httpd.conf
/usr/share/apache/default-configs/apache-ssl/httpd.conf

alc
12.02.07, 15:38
Habe die zeile eingefügt, wirklich was gebracht hats nichts .. hinzukommt das jetzt auch noch was mit dem vhost nicht stimmt nachdem ich ihn nochmals auf richtigkeit geprüft hatte, korrigiert habe (nach dem howto)


/etc/init.d/apache2 start
Starting web server: Apache2[Mon Feb 12 15:30:23 2007] [warn] VirtualHost ip:80 overlaps with VirtualHost ip:80, the first has precedence, perhaps you need a NameVirtualHost directive


wenn ich in der virtual host datei aber NameVirtualHost * eintrage meckert er folgendes raus:


/etc/init.d/apache2 start
Starting web server: Apache2[Mon Feb 12 15:31:27 2007] [error] (EAI 2)Name or service not known: Cannot resolve host name test --- ignoring!
[Mon Feb 12 15:31:27 2007] [error] (EAI 2)Name or service not known: Cannot resolve host name test --- ignoring!
[Mon Feb 12 15:31:27 2007] [warn] VirtualHost ip:80 overlaps with VirtualHost ip:80, the first has precedence, perhaps you need a NameVirtualHost directive


Also langsam aber sicher komm ich überhaupt nich mehr klar :s

suck
12.02.07, 15:58
Entweder hast Du 2 Einträge für VirtualHost in der apache2.conf oder apache verarbeitet mehrere Configfiles. Falls Ersteres nicht der Fall ist, muss es eigenltich Zweiteres sein. In diesem Fall würde ich als erstes versuchen apache bzw. das Programm httpd mit dem Argument "-f /path/to/apache2.conf" zu starten. Wenn der Fehler weiter auftritt, würde ich alle "httpd.conf" Dateien, die nicht unterhalb von /usr/share liegen in "httpd.conf.alt" umbenennen.

Hast Du die apache2.conf denn angepasst? Also User, Group, ServerName, DocumentRoot, ServerRoot, .. passend gesetzt/kontrolliert?

Hier habe ich was gefunden, wo beschrieben wird, was noch in die apache2.conf gehört: http://www.deanspot.org/~alex/php5fcgi/ (http://www.deanspot.org/%7Ealex/php5fcgi/)

Bei dem Link muss man mit der Maus nach unter rechts gehen und dann auf das Durchshcnittszeichen klicken, damit man es anständig lesen kann.

alc
12.02.07, 16:35
so, hab die configs umbenannt, user geändert (in der apache2.conf ist jetz der user und die gruppe vom vhost angegeben) und bekomme immer noch die selben fehler, kann mich jetzt aber wieder über phpmyadmin einloggen (allerdings nur wenn ich mit lampp starte)

Ich hatte vorher übrigens gar keinen eitnrag in der apache2.conf für vhost.
ALlerdings im verzeichnis /etc/apache2/mods-available/eine default datei(vhost informationen stehen dort drin sprich es ist die vhost datei) die ich dann noch nach mods-enabled gelinkt habe (mit -ln war ja richtig? ) so wie es im howto geschrieben steht..
oder war das nun falsch?

suck
12.02.07, 17:04
Das klingt richtig, was steht denn alles in der Datei?

lampp (musste grad erstmal nachsehen, was das überhaupt ist) bringt ja einen eigenen apache mit. Vielleicht stören sich die Beiden..

Wird der neu installierte Apache vor dem von lampp gefunden? Wie sieht denn dein Pfad aus und wo ist das Programm httpd? Ausserdem wäre das Startscript, welches den Apache startet mal interessant.

alc
12.02.07, 17:43
ich habe dir was per pm geschickt
glaube ehrlich gesagt nicht das die beiden sich stören, aber werden später trotzdem mal lampp runterhauen, ist ja innerhalb von 1 minute wieder drauf. lampp ist xampp für linux , vorteil ist eben das es extrem einfach zu konfigurieren ist, php5 mitbringt etc. Problem ist aber das das Script, welches ich versuche zu starten, nicht mit dem php5 von lampp funzt
ist

via find sieht es so aus:


/etc/init.d/apache
/etc/logrotate.d/apache
/etc/php5/apache
/etc/apache
/home/php5_src/php-5.2.1/sapi/apache
/home/php5_src/php-5.2.1/scripts/apache
/opt/lampp/licenses/apache
/usr/share/apache
/usr/share/apache/default-configs/apache
/usr/share/webmin-1.200/apache
/usr/share/webmin-1.200/caldera/apache
/usr/share/webmin-1.200/mscstyle3/apache
/usr/share/ucf/phpmyadmin/etc/apache
/usr/share/ucf/libapache-mod-php5.0/etc/php5.0/apache
/usr/lib/apache
/usr/local/webmin/apache
/usr/local/webmin/caldera/apache
/usr/local/webmin/mscstyle3/apache
/var/lib/apache
/var/log/apache

httpd via find :



/opt/lampp/bin/httpd


hier wundert es mich das es nur in opt/lampp/bin/ ist, (ausserdem noch in einem home ordner von CoD2 (Call Of Duty2, ein Spiel) was aber hier eher nichts zur sache tut denke ich
hoffe ich habe das so richtig gemacht das du was mit anfangen kannst

und hier als anhang noch die apache2.conf (musste sie renamen da ich es als .conf nich anhängen konnte)

suck
12.02.07, 19:05
Das mit dem httpd wundert mich ebenfalls stark. Poste doch mal die Ausgabe von "cat /etc/init.d/apache2". Ich möchte sehen, was der da überhaupt ausführt..

alc
12.02.07, 19:12
wo wird nochmal die ausgabe der shell geloggt? :rolleyes: krieg nich alles kopiert..



# in this case the pid stored in the
# pidfile matches one of the pidof apache
# so a simple kill will make it
REALPID=1
fi
done

if [ $REALPID = 1 ]; then
# in this case it is everything nice and dandy
# and we kill apache2
kill $PID
else
# this is the worst situation... just kill all of them
#for i in $PIDS; do
# kill $i
#done
# Except, we can't do that, because it's very, very bad
echo " ... failed!"
echo "You may still have some apache2 processes running. There are"
echo "processes named 'apache2' which do not match your pid file,"
echo "and in the name of safety, we've left them alone. Please review"
echo "the situation by hand."
fi
fi
}

# Stupid hack to keep lintian happy. (Warrk! Stupidhack!).
case $1 in
start)
[ -f /etc/apache2/httpd.conf ] || touch /etc/apache2/httpd.conf
#ssl_scache shouldn't be here if we're just starting up.
[ -f /var/run/apache2/ssl_scache ] && rm -f /var/run/apache2/*ssl_scache*
echo -n "Starting web server: Apache2"
$APACHE2CTL startssl
echo "."
;;
stop)
echo -n "Stopping web server: Apache2"
apache_stop
echo "."
;;
reload)
echo -n "Reloading web server config..."
$APACHE2CTL graceful $2
echo "done."
;;
restart | force-reload)
echo -n "Forcing reload of web server: Apache2"
apache_stop
$APACHE2CTL startssl
echo "."
;;
*)
echo "Usage: /etc/init.d/apache2 start|stop|restart|reload|force-reload"
;;
esac