Apache, PHP und mySQL: Unterschied zwischen den Versionen

Aus MySlug
Zur Navigation springen Zur Suche springen
Zeile 1: Zeile 1:
==Apache 2 mit php5 installieren==
+
Der Apache 2 Webserver ist auf Linux schnell installiert. Führt dazu folgenden Befehl aus:
  
Der Apache 2 Webserver ist auf Linux schnell installiert. Führt dazu folgenden Befehl aus:
+
<code><pre>apt-get install apache2 php5 libapache2-mod-php5</pre></code>
<code><pre>apt-get install apache2 php5 libapache2-mod-php5</pre></code>  
+
Die Konfigurationsdateien finden sich zudem unter folgendem Verzeichnis:
Die Konfigurationsdateien finden sich zudem unter folgendem Verzeichnis:<br>
+
<br><br>
<br>
+
'''/etc/apache2/'''
'''/etc/apache2/'''<br>
+
<br><br>
<br>
 
 
Bei Änderungen an den Konfigurationsdateien muß dann immer wieder der Apache 2 neu gestartet werden. Dazu gebt einfach folgenden Befehl ein:
 
Bei Änderungen an den Konfigurationsdateien muß dann immer wieder der Apache 2 neu gestartet werden. Dazu gebt einfach folgenden Befehl ein:
 +
 
<code><pre>/etc/init.d/apache2 restart</pre></code>
 
<code><pre>/etc/init.d/apache2 restart</pre></code>
<br>
+
Wenn Ihr die Meldung apache2: Could not reliably determine the server's fully qualified domain name ist das nicht weiter wild. Abstellen könnt Ihr das wie folgt:
<br>
+
 
 +
<code><pre>nano /etc/apache2/conf.d/fqdn</pre></code>
 +
Fügt dann folgende Zeile ein:
 +
 
 +
<code><pre>ServerName localhost</pre></code>
 +
Speichert die Änderung und startet den Apache2 neu durch:
 +
 
 +
<code><pre>/etc/init.d/apache2 restart</pre></code>
 +
<br><br>
 
==mySQL installieren==
 
==mySQL installieren==
 +
 
Damit wir auch eine Datenbank zur Verfügung haben könnt Ihr diese mit
 
Damit wir auch eine Datenbank zur Verfügung haben könnt Ihr diese mit
 +
 
<code><pre>apt-get install php5-mysql mysql-server mysql-client</pre></code>
 
<code><pre>apt-get install php5-mysql mysql-server mysql-client</pre></code>
installieren.
+
installieren. Setzt dann erstmal ein Passwort für mysql:
Setzt dann erstmal ein Passwort für mysql:
+
 
 
<code><pre>mysqladmin -u root password DEIN_GEHEIMES_PASSWORT</pre></code>
 
<code><pre>mysqladmin -u root password DEIN_GEHEIMES_PASSWORT</pre></code>
 +
(dies wird auch bereits bei der Installation des mysql Pakets abgefragt.
 +
 
Mit einem
 
Mit einem
<code><pre>mysqladmin -p create tabelle01</pre></code>
+
 
 +
<code><pre>mysqladmin -p create tabelle01
 
legt Ihr beispielsweise dann eine erste Datenbank namens tabelle01 an. Ihr könnt diese mit einem
 
legt Ihr beispielsweise dann eine erste Datenbank namens tabelle01 an. Ihr könnt diese mit einem
 +
 
<code><pre>mysqladmin -p drop tabelle01</pre></code>
 
<code><pre>mysqladmin -p drop tabelle01</pre></code>
 
wieder entfernen/löschen. Wenn Ihr das seht, dann ist die Tabele auch wieder entfernt:
 
wieder entfernen/löschen. Wenn Ihr das seht, dann ist die Tabele auch wieder entfernt:
<code><pre>
+
 
Dropping the database is potentially a very bad thing to do.
+
<code><pre>Dropping the database is potentially a very bad thing to do.
 
Any data stored in the database will be destroyed.
 
Any data stored in the database will be destroyed.
  
 
Do you really want to drop the 'tabelle01' database [y/N] y
 
Do you really want to drop the 'tabelle01' database [y/N] y
Database "tabelle01" dropped
+
Database "tabelle01" dropped</pre></code>
</pre></code>
+
Wenn Ihr einen neuen Datenbankuser anlegen wollt, dann gebt folgendes als Root ein:
 +
 
 +
<code><pre>mysql -p</pre></code>
 +
Danach an der Konsole folgende Befehle eingeben:
 +
 
 +
<code><pre>CREATE USER 'neueruser'@'localhost' IDENTIFIED BY 'password';
 +
GRANT ALL PRIVILEGES ON * . * TO 'neueruser'@'localhost';
 +
FLUSH PRIVILEGES;
 +
exit</pre></code>
 
Checkt nun, ob alles sauber läuft. Dazu legen wir in unser Dokumentenroot eine Datei mit folgenden Inhalt:<br>
 
Checkt nun, ob alles sauber läuft. Dazu legen wir in unser Dokumentenroot eine Datei mit folgenden Inhalt:<br>
''phpinfo.php''
+
'''phpinfo.php'''
 +
 
 
<code><pre>
 
<code><pre>
 
<?php
 
<?php
 
phpinfo();
 
phpinfo();
 
?></pre></code>
 
?></pre></code>
Erstellt die Datei einfach extern in einen Editor und ladet diese in Euer Dokumentenroot des Servers. Wenn Ihr diese nun im Browser aufruft, solltet Ihr eine entsprechende Anzeige bekommen.
+
Erstellt die Datei einfach extern in einen Editor und ladet diese in Euer Dokumentenroot des Servers. Wenn Ihr diese nun im Browser aufruft, solltet Ihr eine entsprechende Anzeige bekommen.  
<br>
+
 
<br>
+
<br><br>
==Eaccelerator installieren==
+
==APC Caching installieren==
Um nun den Aufruf etwas zu beschleunigen installieren wir noch ein Cachesystem, den eAccelerator. Dieser muss allerdings von Grund auf neu kompiliert werden. Installiert deswegen zuerst folgende Komponenten, die Ihr für den Compile benötigt:
+
 
<code><pre>apt-get install bzip2 build-essential php5-dev</pre></code>
+
Um die Websiten etwas flotter zu machen kann man noch mit einem php Caching nachelfen. Das Paket APC lässt sich easy über ein
Jetzt legen wir unter dem Hauptverzeichnis ein Arbeitsverzeichnis an:
+
 
<code><pre>mkdir work</pre></code>
+
<code><pre>apt-get install php-pear php-apc</pre></code>
wir wechseln dahin:
+
Startet den Webserver neu:
<code><pre>cd work</pre></code>
 
Danach holen wir uns die aktuelle Version (Bitte auf der eaccelerator Projektseite nach der aktuellen Versionsnummer schauen):
 
<code><pre>wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2</pre></code>
 
Danach wird ausgepackt:
 
<code><pre>tar xvfj eaccelerator-0.9.5.3.tar.bz2</pre></code>
 
Und in das korrekte Verzeichnis gewechselt:
 
<code><pre>cd eaccelerator-0.9.5.3</pre></code>
 
Danach bereiten wir den Compile vor:
 
<code><pre>
 
phpize
 
  
./configure --with-eaccelerator-userid=nobody
 
</pre></code>
 
Kompilieren:
 
<code><pre>make</pre></code>
 
Installieren:
 
<code><pre>make install</pre></code>
 
Wir müssen nun die eaccelerator.ini anlegen:
 
<code><pre>touch /etc/php5/conf.d/eaccelerator.ini</pre></code>
 
Füllt diese Datei mit Eurem präferierten Editor mit folgendem Inhalt:
 
<code><pre>extension="eaccelerator.so"
 
eaccelerator.shm_size="16"
 
eaccelerator.cache_dir="/var/cache/eaccelerator"
 
eaccelerator.enable="1"
 
eaccelerator.optimizer="1"
 
eaccelerator.check_mtime="1"
 
eaccelerator.debug="0"
 
eaccelerator.filter=""
 
eaccelerator.shm_max="0"
 
eaccelerator.shm_ttl="0"
 
eaccelerator.shm_prune_period="0"
 
eaccelerator.shm_only="0"
 
eaccelerator.compress="1"
 
eaccelerator.compress_level="9"</pre></code>
 
Danach müssen wir noch das Verzeichnis anlegen, in dem gecacht werden soll. Dieses ist in der eaccelerator.ini vorgegeben:
 
<code><pre>mkdir -p /var/cache/eaccelerator</pre></code>
 
Danach müssen noch die Zugriffsrechte neu geregelt werden:
 
<code><pre>chmod 0777 /var/cache/eaccelerator</pre></code>
 
Startet den Apache nun neu:
 
 
<code><pre>/etc/init.d/apache2 restart</pre></code>
 
<code><pre>/etc/init.d/apache2 restart</pre></code>
Damit wir testen können, ob der eaccelerator und alle anderen sonstigen Dienste laufen, schauen wir uns nochmal die phpinfo.php an. Wenn der eaccelerator läuft seht Ihr folgenden Abschnitt:<br>
 
[[Bild:eac.jpg|eaccelerator]]<br>
 
Bitte beachtet, dass Ihr den eAccelerator jedes Mal neu kompilieren müsst, sobald eine neue php Version installiert wird, da es sonst zu Versionskonflikten kommt und der Apache Webserver nicht startet. Wenn Ihr keinen Zugriff nach einem php Update habt, dann schaut Euch die '''/var/log/apache2/error.log''' an, dort wird in der Regel ein entsprechender Hinweis zu finden sein. Um einen neuen Kompile zu starten muss vorher das Entwicklerverzeichnis aufgeräumt werden. Also in Eurem eAccelerator Work Verzeichnis ein
 
<code><pre>make clean</pre></code>
 
ausführen. Danach die Prozedur wie oben beschrieben und dann den Apache neu starten:
 
<code><pre>/etc/init.d/apache2 restart</pre></code><br>
 
Damit wäre der Webserver soweit eingerichtet.
 
<br>
 
<br>
 

Version vom 11. Oktober 2015, 12:16 Uhr

Der Apache 2 Webserver ist auf Linux schnell installiert. Führt dazu folgenden Befehl aus:

apt-get install apache2 php5 libapache2-mod-php5

Die Konfigurationsdateien finden sich zudem unter folgendem Verzeichnis:

/etc/apache2/

Bei Änderungen an den Konfigurationsdateien muß dann immer wieder der Apache 2 neu gestartet werden. Dazu gebt einfach folgenden Befehl ein:

/etc/init.d/apache2 restart

Wenn Ihr die Meldung apache2: Could not reliably determine the server's fully qualified domain name ist das nicht weiter wild. Abstellen könnt Ihr das wie folgt:

nano /etc/apache2/conf.d/fqdn

Fügt dann folgende Zeile ein:

ServerName localhost

Speichert die Änderung und startet den Apache2 neu durch:

/etc/init.d/apache2 restart



mySQL installieren

Damit wir auch eine Datenbank zur Verfügung haben könnt Ihr diese mit

apt-get install php5-mysql mysql-server mysql-client

installieren. Setzt dann erstmal ein Passwort für mysql:

mysqladmin -u root password DEIN_GEHEIMES_PASSWORT

(dies wird auch bereits bei der Installation des mysql Pakets abgefragt.

Mit einem

mysqladmin -p create tabelle01
legt Ihr beispielsweise dann eine erste Datenbank namens tabelle01 an. Ihr könnt diese mit einem

<code><pre>mysqladmin -p drop tabelle01

wieder entfernen/löschen. Wenn Ihr das seht, dann ist die Tabele auch wieder entfernt:

Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.

Do you really want to drop the 'tabelle01' database [y/N] y
Database "tabelle01" dropped

Wenn Ihr einen neuen Datenbankuser anlegen wollt, dann gebt folgendes als Root ein:

mysql -p

Danach an der Konsole folgende Befehle eingeben:

CREATE USER 'neueruser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON * . * TO 'neueruser'@'localhost';
FLUSH PRIVILEGES;
exit

Checkt nun, ob alles sauber läuft. Dazu legen wir in unser Dokumentenroot eine Datei mit folgenden Inhalt:
phpinfo.php

<?php
phpinfo();
?>

Erstellt die Datei einfach extern in einen Editor und ladet diese in Euer Dokumentenroot des Servers. Wenn Ihr diese nun im Browser aufruft, solltet Ihr eine entsprechende Anzeige bekommen.



APC Caching installieren

Um die Websiten etwas flotter zu machen kann man noch mit einem php Caching nachelfen. Das Paket APC lässt sich easy über ein

apt-get install php-pear php-apc

Startet den Webserver neu:

/etc/init.d/apache2 restart