Apache2 mit PHP5 und MySQL Unterstützung unter OpenSUSE 11.4 installieren (LAMP)

Version 1.0

Author: Falko Timme , Christian Schmalfeld <c [dot] schmalfeld [at] projektfarm [dot] de>

Follow me on Twitter


LAMP ist die Kurzform für Linux, Apache, MySQL, PHP. Dieses Tutorial zeigt Ihnen wie Sie einen Apache2 Webserver auf einem OpenSUSE 11.4 Server mit PHP5 (mod_php) und MySQL Unterstützung installieren.

Für den Inhalt des Tutorials gebe ich keinerlei Garantie!

1 Vorbemerkung

Ich werde in diesem Tutorial den Servernamen server1.example.com mit der IP-Adresse 192.168.0.100 benutzen. Diese Einstellungen werden sich wahrscheinlich von Ihren unterscheiden, ersetzen Sie diese also an den entsprechenden Stellen.

2 Installation von MySQL 5.0

Um MySQL zu installieren, benutzen Sie folgenden Befehl:

yast2 -i mysql mysql-client mysql-community-server

Danach richten Sie die Systemstartlinks für MySQL ein (sodass MySQL automatisch startet, sobald das System gestartet wird) und starten den MySQL Server:

chkconfig -f --add mysql

/etc/init.d/mysql start

Führen Sie folgendes aus um die MySQL Installation zu sichern:

mysql_secure_installation

Ihnen werden nun diverse Fragen gestellt:

server1:~ # mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL

SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MySQL to secure it, we'll need the current

password for the root user.  If you've just installed MySQL, and

you haven't set the root password yet, the password will be blank,

so you should just press enter here.

Enter current password for root (enter for none): <-- ENTER
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MySQL

root user without the proper authorisation.

Set root password? [Y/n] <-- Y
New password: <-- geben Sie Ihr gewünschtes MySQL root
Passwort ein

Re-enter new password: <-- bestätigen Sie das Passwort
Password updated successfully!
Reloading privilege tables..

... Success!

By default, a MySQL installation has an anonymous user, allowing anyone

to log into MySQL without having to have a user account created for

them.  This is intended only for testing, and to make the installation

go a bit smoother.  You should remove them before moving into a

production environment.

Remove anonymous users? [Y/n] <-- Y
... Success!
Normally, root should only be allowed to connect from 'localhost'.  This

ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] <-- Y
... Success!
By default, MySQL comes with a database named 'test' that anyone can

access.  This is also intended only for testing, and should be removed

before moving into a production environment.

Remove test database and access to it? [Y/n] <-- Y
- Dropping test database...
... Success!

- Removing privileges on test database...

... Success!

Reloading the privilege tables will ensure that all changes made so far

will take effect immediately.

Reload privilege tables now? [Y/n] <-- Y
... Success!
Cleaning up...

All done!  If you've completed all of the above steps, your MySQL

installation should now be secure.

Thanks for using MySQL!

server1:~ #

Ihr MySQL Setup sollte nun sicher sein.

3 Installation von Apache2

Apache2 ist als OpenSUSE Paket verfügbar, deshalb können Sie es wie folgt installieren:

yast2 -i apache2

Konfigurieren Sie nun auch Apache so, dass es beim Systemstart automatisch mitstartet:

chkconfig -f --add apache2

... und starten Sie Apache:

/etc/init.d/apache2 start

Gehen Sie nun mit Ihrem Internetbrowser auf http://192.168.0.100, wo Sie die Apache2 Platzhalterseite vorfinden (Kümmern Sie sich nicht um den 403 Fehler, dieser entsteht, weil keine Indexdatei (z.B. index.html) im Quellverzeichnis vorliegt):


Das Apache Quellverzeichnis ist unter OpenSUSE /srv/www/htdocs/, die Konfigurationsdatei ist /etc/apache2/httpd.conf.
Zusätzliche Konfigurationen werden im /etc/apache2/conf.d/ Verzeichnis gespeichert.

4 Installation von PHP5

PHP5 und seine Apachemodule lassen sich wie folgt installieren:

yast2 -i apache2-mod_php5

Starten Sie Apache danach neu:

/etc/init.d/apache2 restart


5 PHP5 testen und Details über die Installation abrufen

Das Verzeichnis des Standartwebseite ist /srv/www/htdocs/. Erstellen Sie nun folgende kleine PHP Datei (info.php) in diesem Verzeichnis und öffnen Sie diese in einem Browser. Die Datei wird viele nützliche Informationen über Ihre PHP Installation anzeigen,
zum Beispiel die installierte PHP Version.

vi /srv/www/htdocs/info.php


<?php
phpinfo(); ?>
(Sollten Sie die Nachricht You do not have a valid vim binary package installed. Please install either "vim",
"vim-enhanced" or "gvim".
bekommen, führen Sie

yast2 -i vim

aus um vi zu installieren und versuchen Sie es erneut. )

Öffnen Sie die Datei nun im Browser (hier: http://192.168.0.100/info.php):


Wie Sie sehen funktioniert PHP5, dies tut es durch den Apache 2.0 Handler, wie Sie in der Zeile Server API sehen können. Scrollen Sie weiter runter, sehen Sie dort alle Module aufgelistet, die für PHP5 aktiviert sind. MySQL ist dort nicht aufgelistet, was bedeutet, dass wir noch keine MySQL Unterstützung in PHP5 haben.

6 MySQL Unterstützung in PHP5 einrichten

Um MySQL Unterstützung in PHP zu bekommen, können wir das php-mysql Paket installieren. Es ist außerdem eine gute Idee, zusätzliche PHP5 Module zu installieren, da Sie diese für Ihre Apps brauchen könnten.

Wählen Sie die benötigten Module aus und installieren Sie diese wie folgt:

yast2 -i php5-mysql php5-bcmath php5-bz2 php5-calendar php5-ctype php5-curl php5-dom php5-ftp php5-gd php5-gettext php5-gmp php5-iconv php5-imap php5-ldap php5-mbstring php5-mcrypt php5-odbc php5-openssl php5-pcntl php5-pgsql php5-posix php5-shmop php5-snmp php5-soap php5-sockets php5-sqlite php5-sysvsem php5-tokenizer php5-wddx php5-xmlrpc php5-xsl php5-zlib php5-exif php5-fastcgi php5-pear php5-sysvmsg php5-sysvshm

Starten Sie Apache2 nun neu:

/etc/init.d/httpd restart

Laden Sie http://192.168.0.100/info.php erneut in Ihrem Browser und scrollen Sie wieder in die Modulsektion herunter. Sie sollten nun alle installierten Module dort vorfinden, inklusive des MySQL Moduls:

7 phpMyAdmin

phpMyAdmin ist eine Internetoberfläche mit der Sie Ihre MySQL Datenbanken verwalten können.

Installieren Sie phpMyAdmin wie folgt

zypper install
http://download.opensuse.org/repositories/server:/php:/applications/openSUSE_11.4/noarch/phpMyAdmin-3.3.10-5.2.noarch.rpm

und starten Sie Apache neu:

/etc/init.d/apache2 restart

Hiernach können Sie phpMyAdmin unter http://192.168.0.100/phpmyadmin/ erreichen:

8 Links