phpbar.de logo

Mailinglisten-Archive

Re: [php] Konfigurationsprobleme
Archiv Mailingliste php_(at)_infosoc.uni-koeln.de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [php] Konfigurationsprobleme



Antje Niedostatek wrote:
> 
> Hallo,
> 
> ich bin im Moment ziemlich ratlos.
> 
> Ich habe heute PHP3 auf Linux installiert. Webserver ist natürlich
> Apache (Version: 1.3.1). Ich habe mich streng an die
> Installationsanweisungen von PHP gehalten, auch AddType ... in die
> srm.conf eingefügt, den Server restartet.
> Trotzdem will mein Browser meine Testdatei *.php3 abspeichern. Zum
> Hohn will er sie als "type application/x-httpd-php3" abspeichern.
> Das Fehler-Logfile zeigt brav "Apache... PHP/3.0.2a configured".
> Was könnte ich falsch gemacht haben?

Hallo Antje, ich hab das auch gerade gemacht und hatte genau
das auch. Hast du mal in die ErrorLogfile geschaut? Steht
da, dass der Apache mit PHP gestartet ist? Ich habe eine
PHP Seite in html umgenannt und siehe da, sie wurde nicht geparst.
Dann habe ich _alle_ Httpd-Binarys vernichtet, die ich finden
konnte und alles nochmal kompiliert und siehe da .. es ging.

Ich kann´s nicht beweisen :) Aber ich vermute ganz stark, dass
da noch eine Binary rumlag, auf die der Compi beim Hochfahren
zugriff und die nicht mit PHP kompiliert war.

Zu guter letzt habe ich eine Doku geschrieben fuer
PHP,Apache und MySQL. (mod_auth_mysql ist leider nicht drin)
Ich hoffe, ich hab keinen Fehler drin.
Vielleicht magst Du die mal ausprobieren.


Installationsanleitung fuer PHP, MySQL 
und Apache auf Linux

1. Voraussetzungen

GNU Gzip
GNU tar
GNU-Autoconf
GNU Make (empfohlen)
Linux Kernel 2.0 und hoeher mit Posix Threads
LinuxThreads
Ein Ansi C++ Compiler
(z.B. gcc >= 2.7, fuer Linux empfohlen)

Ich arbeite mit Suse5.2 und
hatte mal irgendwann nur
Bison updaten muessen,
weiss aber nicht mehr, ob
es fuer eins dieser Programme
war.

2. Download

MySQL-Mirror            http://mysql.staufen.de/download.html
apache_1.3.1.tar.gz     http://www.apache.de/dist/
PHP 3.0.3 source        http://www.php3.de/download-php.php3

http://mysql.staufen.de/Manual/manual-german.html
Ein ausfuehrliches Installationsmanual in deutsch
fuer MySQL

3. Installation

Beispiel-Wurzelverzeichnis: /usr/local
(ist auch das Default-Verzeichnis von MySQL)

MySQL, Apache und PHP3 in den Unterverzeichnissen
/usr/local/{mysql,apache, php3} auspacken.

- vorm Entpacken mit tar eventuell die Endungen: "*tar.tar" 
  mit cp in "tar.gz" umbenennen. 
- eventuell die Programme aus den Versionsverzeichnissen
  (z.B.: /usr/local/apache/apache_1.3.1 mit: cp * -r /usr/local/apache)
  in der Verzeichnishierachie eine Ebene hoeher installieren.
  Es sollte auch so gehen; dann muss man aber mehr schreiben.

3.1 MySQL

(befindet sich bei mir in /usr/local/mysql)

a) ./configure
        verschiedene Checks, Erstellung der Makefiles, bei Erfolg:
        "MySQL has a Website at http://www.tcx.se ...
        Remember to check the platform specific parts in
        the reference manual for hints about installing your
        plattform. See the Docs directory
        Thank you for choosing MySQL!

        ./configure --help ruft die Configurations-Optionen auf

b) make
        kompiliert die Programme, verschiedene Meldungen flimmern ueber
        den Schirm. Das dauerte bei mir fuenfzehn Minuten 
        (586´er, 120MH, 64MByte Ram). Dabei setzt der gcc circa 180MB um,
        eventuell: ./configure --with-low-memory aufrufen.
        Sollten Fehler auftreten, ist wahrscheinlich eins der Programme 
        oben nicht upgedatet oder fehlt.
        zu weiteren Fehlermeldungen:
        http://mysql.staufen.de/Manual/manual-german.html

c) make install
        Installiert die Programme in die jeweiligen Verzeichnisse
        z.B.: mysqladmin nach /usr/local/bin

d) ./scripts/mysql_install_db

        Installiert die Privilige Tabellen
        (Nur aufrufen, wenn MySQL zum ersten Mal installiert wird.
        das Script kann angepasst werden.)

e)  /usr/local/bin/mysqladmin version

        Wenn der Server funktioniert, erhaelt man eine Meldung wie diese:

        Server Version          3.21.33b_log
        Protocol Version        10
        Connection              Localhost via Unix socket
        Unix Socket             /tmp/mysql.sock
        uptime                  2 min 15 sec
        Running threads 1       Questions 18
        Opened_tables 7         Flush tables: 1
        Open tables 3


f) /usr/local/bin/mysqlshow sollte folgenden Output liefern:

        Databases
        mysq
        test

g) Start und Stop des Servers

        /usr/local/mysql/scripts/mysql.server start
        /usr/local/mysql/scripts/mysql.server stop

        starten des Servers bei Hochfahren des Systems
        kann in /sbin/init.d eingestellt werden
        Linuxianer wissen, wie das geht, steht im SuseHandbuch
        weitere Fragen hierzu: news:de.comp.linux.misc

Sollte MySQL reconfiguriert werden, muss man die Datei 
config.cache in /usr/local/mysql loeschen, bzw. make distclean
aussfuehren.

3.2 Apache

Der Apache-Server muss einmal installiert sein, bevor er
mit PHP als Modul kompiliert wird. Die Konfiguration
ist dabei egal.

Das Root-Verzeichnis des  Apache ist bei mir in: /usr/local/apache

a) ./configure --prefix=/usr/local/apache
b) make
c) make install

Wenn alles glatt lief, ist /usr/local/apache um einige
Unterverzeichnisse reicher, der Server kann gesteuert werden
werden in: /usr/local/apache/sbin/apachectl start/stop/restart ...

Auf Default liest apchectl beim Start einmalig die 
Konfigurationsdateien in: /usr/local/apache/etc/ ein.

Fuer einen ersten Test ist eine Manipulation in der httpd.conf noetig.

"User nobody" umbenennen in: User >ein angemeldeter User im System<
User nobody anmelden.

vor: "Group" eine Raute machen.

d) /usr/local/apache/sbin/apachectl start

Sollte eine Meldung bringen, dass der Server nun laueft.

Wer noch nie in Linux einen Apache-Server installiert hat, sollte
sich mal einen langen Abend und mehr Zeit nehmen und die Documentationen
einmal ausfuehrlich studieren. Da steht eine Menge zur ServerSicherheit,
VirtualHosts, .htaccess-files, mod_rewrite und vieles mehr. Der Apache
ist nicht nur Internet- sonder auch auch Intranet-Tauglich,
es lohnt sich.

3.3 PHP

im Verzeichnis /usr/local/php ...

a) ./configure --with-apache=/usr/local/apache --with-mysql
--enable-track-vars=yes
b) make
c) make install

Im Verzeichnis /usr/local/apache/scr/modules/php3 sollten sich
nun einige PHP-Dateien befinden. Apache braucht sie,
zum Kompilieren. Das Default Verzeichnis der php.ini ist
in /usr/local/lib. Dahin muss noch die php.ini-dist kopiert
und in php.ini umbenannt werden.

3.3 Apache und PHP in der Modulversion

im Verzeichnis /usr/local/apache:

a) ./configure --prefix=/usr/local/apache
--activate-module=src/modules/php3/libphp3.a

b) make

c) make install

d) Zusatz in der Datei /usr/local/apache/etc/httpd.conf oder srm.conf

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

Dateien mit den Endungen .php und php3 im werden nun vom Server geparst.
Dateien mit der Endung .phps werden in einstellbarem Layout als
Textfiles dargestellt (dazu mehr in der php.ini)
In der ModulVersion funktioniert die Ausfuehrung von 
PHP-Dateien im CGI-Verzeichnis nicht. Dafuer ist ein 
PHP-Interpreter notwendig.


Das waren die noetigsten Schritte
fuer die Installation ohne Konfigurierung.

Bei mir hat das geklappt.
Ich hoffe keine Fehler in der
Doku gemacht zu haben.

Viel Erfolg

Mike

Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive