Difference between revisions of "Installation von MapServer, Apache und PostgreSQL/PostGIS auf Debian 4.0"

From OSGeo
Jump to navigation Jump to search
Line 117: Line 117:
  
 
==Installation von PHP==
 
==Installation von PHP==
 +
 +
Führen Sie aus:
 +
apt-get install libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-pgsql php5-dev

Revision as of 13:18, 26 October 2007

Ok, Sie haben also Debian Etch (4.0) auf Ihrem Rechner laufen und möchten dort nun eine eigene Umgebung für den MapServer aufbauen. Wie immer führen natürlich viele Wege nach Rom. Mittels folgendem sollte es auch gehen: Führen Sie als root folgende Befehle auf der Kommandozeile aus:

apt-get update (aktualisiert die Übersicht der verfügbaren Pakete)
apt-get upgrade (alle auf dem System installierten Pakete werden auf die
                 aktuellste Version gebracht)

Anschließend müssen versch edene Basisbibliotheken/Programme installiert werden.

Geben Sie ein:

apt-get install zip unzip bzip2 zlib1g-dev libreadline-dev build-essential

Achten Sie darauf, dass unter /etc/apt/sources.list auch gültige Angaben zu Debianquellen stehen, z.B. :

deb http://ftp.de.debian.org/debian/ etch main
deb-src http://ftp.de.debian.org/debian/ etch main
deb http://security.debian.org/ etch/updates main contrib
deb-src http://security.debian.org/ etch/updates main contrib

Installation von Apache

apt-iget install apache2

Apache2 besteht nicht mehr nur aus einer zentralen Konfigurationsdatei (httpd.conf) sondern aus mehreren. Die Konfigurationsdateien liegen in /etc/apache2. Editieren Sie einmal die Datei 000-default, welche im Verzeichnis /etc/apache2/sites-enabled liegt. Kommentieren Sie den Ausdruck RedirectMatch ^/$ /apache2-default/ aus, also wie folgt:

#                RedirectMatch ^/$ /apache2-default/

Löschen Sie außerdem folgendes Verzeichnis:

rm -R /var/www/apache2-default/

Einen Neustart des Aapche erreichen Sie mittels

/etc/init.d/apache2 restart

Geben Sie nun in Ihrem Browser

http://localhost

ein. Der Apache greift auf das Verzeichnis

/var/www 

zu und stellt den -in diesem Falle nicht vorhandenen- Inhalt dar.

Installation von PostgreSQL/PostGIS

Legen Sie zunächst ein Verzeichnis an

mkdir /var/src

In dieses Verzeichnis sollten Sie die aktuellen Quellen von PostgreSQL laden, diese entpacken, konfigurieren, kompilieren und installieren:

wget http://ftp3.de.postgresql.org/pub/Mirrors/ftp.postgresql.org/source/v8.2.4/postgresql-8.2.4.tar.gz
tar xzf postgresql-8.2.4.tar.gz
cd postgresql-8.2.4
./configure
make
make install

Anschließend brauchen Sie eine ganze Menge weitere Dateien. Geben Sie ein:

apt-get install proj libgeos-dev libcurl3-dev libfreetype6-dev libgdal-dev libjpeg-dev libpng-dev libgd2-xpm-dev libxml2-dev flex   
bison

Wechseln Sie in das contrib-Verzeichnis des entpackten PostgreSQL-Quellcodes:

cd /var/src/postgresql-8.2.4/contrib
wget http://postgis.refractions.net/download/postgis-1.2.1.tar.gz
tar xzf postgis-1.2.1.tar.gz
mv postgis-1.2.1 postgis
cd postgis
./configure –with-pgsql=/usr/local/pgsql/bin/pg_config
make
make install

Vielleicht möchten Sie jetzt ausprobieren, ob Sie auch wirklich Datenbanken

anlegen können.... Folgende Schritte sind notwendig:

adduser postgres (ein Standarduser mit dem Namen „postgres“ wird angelegt,
Sie müssen hierfür auch ein Passwort festlegen)
mkdir /usr/local/pgsql/data (Verzeichnis anlegen)
chown postgres /usr/local/pgsql/data („postgres“ wird Besitzer des
Verzeichnisses)
su – postgres (es wird sich als „postgres“ eingeloggt)
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data (Datenbankschema wird
initialisiert)
/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data start (Start des Datenbankservers)

Anschließend sollte template1 PostGIS-Unterstützung bekommen. template1 ist die Vorlage für alle Datenbanken. Datenbanken erben also von diesem template und haben dann ebenfalls PostGIS-Funktionen.

/usr/local/pgsql/bin/createlang plpgsql template1
/usr/local/pgsql/bin/psql -d template1 -f /usr/local/pgsql/share/lwpostgis.sql (PostGIS-
Funktionen in die Datenbank bringen)
/usr/local/pgsql/bin/psql -d template1 -f /usr/local/pgsql/share/spatial_ref_sys.sql
(Koordinatensysteme in Datenbank bringen)

Dadurch, dass PostgreSQL aus dem Quellcode installiert wurde, wird der Datenbankserver bei einem Hochfahren des Rechners nicht automatisch gestartet, das ist es aber, was wir wollen. Folgende Schritte sind dafür notwendig (als root):

 mv /var/src/postgresql-8.2.4/contrib/start-scripts/linux /etc/init.d/postgresql

Damit PostgreSQL mit tcp/ip Unterstützung gestartet wird sollte der Parameter -i in dem Skript (/etc/init.d/postgresql) gesetzt werden, also z.B.:

 echo -n "Starting PostgreSQL: "
 su - $PGUSER -c "$DAEMON -i -D '$PGDATA' &" >>$PGLOG 2>&1
 echo "ok"

Ein

update-rc.d postgresql defaults

sorgt dafür, dass bei jedem Hoichfahren des Rechners PostgreSQL/PostGIS automatisch aktiviert wird.

Installation von PHP

Führen Sie aus:

apt-get install libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-pgsql php5-dev