Phpmyadmin: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
KKeine Bearbeitungszusammenfassung
K stil, synt, wikif
 
Zeile 1: Zeile 1:
{{Artikelstil}}
[http://www.phpmyadmin.net/ phpMyAdmin] ist ein webbasiertes Werkzeug zur Administration von MySQL-Datenbanken. Eine funktionierende Installation von [[Apache]], sowie ein MySQL-Server wie z.B. [[MariaDB]] werden daher vorausgesetzt.
[http://www.phpmyadmin.net/ phpMyAdmin] ist ein web-basierendes Werkzeug zur Administration von MySQL-Datenbanken. Hierzu nutzt es ein Apache/PHP Frontend.
Ein funktionierendes [LAMP] wird daher vorausgesetzt.


{{installation
{{installation
Zeile 11: Zeile 9:


== Konfiguration ==
== Konfiguration ==
Nach der Installation sollte man zuerst sicherstellen, dass keine vorhandene Konfiguration exisitert, damit es nicht zu Konflikten kommt. Dann kopiert man sich am einfachsten die Beispiel-Konfigurationsdatei an die passende Stelle.


Vergewissere dich, dass keine ältere Kopie existiert.
cp /etc/webapps/phpmyadmin/apache.example.conf /etc/httpd/conf/extra/httpd-phpmyadmin.conf


# rm -r /srv/http/phpMyAdmin
In der Datei {{ic|/etc/httpd/conf/httpd.conf}} muss folgendes ergänzt werden.
 
Kopiere die Beispielkonfigurationsdatei in das httpd Konfigurationsverzeichnis.
 
# cp /etc/webapps/phpmyadmin/apache.example.conf /etc/httpd/conf/extra/httpd-phpmyadmin.conf
 
Füge folgende Zeilen <code>/etc/httpd/conf/httpd.conf</code> hinzu.


  # phpMyAdmin configuration
  # phpMyAdmin configuration
  Include conf/extra/httpd-phpmyadmin.conf
  Include conf/extra/httpd-phpmyadmin.conf


=== Setze Berechtigungen ===
=== Berechtigungen setzen ===
Als aller erstes muss die Datei <code>etc/httpd/conf/httpd.conf</code>
Die Datei {{ic|/etc/httpd/conf/httpd.conf}} muss entsprechend angepasst werden


Zeile 233 momentan :
Options Indexes FollowSymLinks
    Options Indexes FollowSymLinks
#
    #
# AllowOverride controls what directives may be placed in .htaccess files.
    # AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
    # It can be "All", "None", or any combination of the keywords:
#  Options FileInfo AuthConfig Limit
    #  Options FileInfo AuthConfig Limit
#
    #
AllowOverride All
    AllowOverride None
 
editiert werden. Um die Rechte per .htaccess ändern zu können:
    AllowOverride All
Um Zugriff von jedem Hostrechner zu ermöglichen; editiere oder erstelle <code>/usr/share/webapps/phpMyAdmin/.htaccess</code> und ersetze <code>deny from all</code> zu


allow from all
In der Datei {{ic|/usr/share/webapps/phpMyAdmin/.htaccess}} muss {{ic|deny from all}} durch {{ic|allow from all}} ersetzt werden.


Alternativ kannst du den Zugang auf localhost und dein lokales Netzwerk beschränken. Ersetze ''192.168.1.0/24'' mit dem IP-Block deines Netzwerkes.
Alternativ kann man den Zugang auf localhost und das lokale Netzwerk beschränken. Dazu muss die IP-Adresse an den entsprechenden Stellen angepasst werden


  deny from all
  deny from all
Zeile 51: Zeile 39:
  allow from 192.168.1.0/24
  allow from 192.168.1.0/24


'''Merke''': Das ::1 wird für IPv6 benötigt. Ansonsten
=== phpMyAdmin-Konfiguration in Apache Prüfen ===
bekämst du eventuell eine Fehlermeldung ähnlich "Error
Die Datei {{ic|/etc/httpd/conf/extra/httpd-phpmyadmin.conf}} sollte Folgendes enthalten:
403 - Acces forbidden!" beim Versuch der phpMyAdmin 
Anmeldung.


=== Prüfe Apache phpMyAdmin Konfiguration ===
Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"
<Directory "/usr/share/webapps/phpMyAdmin">
    AllowOverride All
    Options FollowSymlinks
    Require all granted
    php_admin_value open_basedir "/srv/: /tmp/:/usr/share/webapps/:/etc/webapps:/usr/share/pear/"
</Directory>


Deine <code>/etc/httpd/conf/extra/httpd-phpmyadmin.conf</code> sollte Folgendes enthalten:
Es werden die PHP-Erweiterungen mysqli und mcrypt benötigt, wenn man die phpMyAdmin-interne Authentifizierung benutzen möchte. hierzu müssen die beiden entsprechenden Module ind er {{ic|/etc/php/php.ini}} einkommentiert werden.
 
        Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"
        <Directory "/usr/share/webapps/phpMyAdmin">
                AllowOverride All
                Options FollowSymlinks
                Require all granted
                php_admin_value open_basedir "/srv/: /tmp/:/usr/share/webapps/:/etc/webapps:/usr/share/pear/"
        </Directory>
 
Du brauchst die mysqli und mcrypt; wenn du interne phpMyAdmin Authentifizierung möchtest; Module. Daher kommentiere folgendes in <code>/etc/php/php.ini</code> ein:


  extension=mysqli.so
  extension=mysqli.so
  extension=mcrypt.so
  extension=mcrypt.so


Starte httpd neu.
Danach sollte man Apache neu starten.


=== Füge blowfish_secret Passphrase hinzu ===
== Auf die phpMyAdmin-Installation zugreifen ==
Damit ist die Installation abgeschlossen. Vor der Verwendung sollte man aber Apache einmal final neu starten. Danach kann man über <nowiki>http://localhost/phpmyadmin/</nowiki> auf phpMyAdmin zugreifen.


Falls du folgende Fehlermeldung am Boden der Seite siehst, während du dich das erste mal in /phpmyadmin (Ein zuvor erstellter MySQL Benutzer wird verlangt) :
Dieser pfad lässt sich in der {{ic|/etc/httpd/conf/extra/httpd-phpmyadmin.conf}} anpassen.


  ERROR: The configuration file now needs a secret passphrase (blowfish_secret)
  Alias /andererPfad "/usr/share/webapps/phpMyAdmin"


Du musst ein Blowfish Passwort in die phpMyAdmin Konfigurationsdatei hinzufügen. Füge ein zufälliges Blowfish "Passwort" in <code>/etc/webapps/phpmyadmin/config.inc.php</code> in der Zeile
Hierzu auch [https://bbs.archlinux.org/viewtopic.php?pid=632500] {{sprache|en}} lesen.


=== blowfish_secret-Passphrase hinzufügen ===
Falls am unteren Rand der Seite folgende Fehlermeldung erscheint während man sich das erste mal unter /phpmyadmin anmeldet muss man ein Blowfish-Paswort in die Konfigurationsdatei einfügen.


$cfg['blowfish_secret'] = ; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
ERROR: The configuration file now needs a secret passphrase (blowfish_secret)
hinzu.


[http://www.question-defense.com/tools/phpmyadmin-blowfish-secret-generator Hier] kannst du ein gutes blowfish_secret erhalten und es zwischen die ''Apostrophen'' einfügen. ''Es sollte nun folgendermaßen aussehen''
Hierzu bearbeitet man {{ic|/etc/webapps/phpmyadmin/config.inc.php}} entsprechend


  $cfg['blowfish_secret'] = 'qtdRoGmbc9{8IZr323xYcSN]0s)r$9b_JUnb{~Xz'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
  $cfg['blowfish_secret'] = ; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */


Nach Neuladen der phphMyAdmin Seite sollte der Fehler verschwunden sein.
[http://www.question-defense.com/tools/phpmyadmin-blowfish-secret-generator Hier] kann man ein gutes {{ic|blowfish_secret}} erhalten.


== Auf phpMyAdmin Installation zugreifen ==
$cfg['blowfish_secret'] = '..............'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */


Letztendlich ist deine phpMyAdmin Installation vollendet. Bevor du mit der Benutzung dieser anfängst, muss du jedoch httpd neu starten.
Nach Neuladen der phphMyAdmin Seite sollte der Fehler verschwunden sein.
 
Du über folgenden Link zugreifen:
 
http://localhost/phpmyadmin/
 
Wenn du dies ändern möchtest; öffne <code>/etc/httpd/conf/extra/httpd-phpmyadmin.conf</code> ändere folgende Zeile:
 
Alias /phpmyadmin/ "/usr/share/webapps/phpMyAdmin/"


in
===local MySQL server's socket is not correctly configured===
Sollte beim Zugriff der Fehler ''#2002 - The server is not responding (or the local MySQL server's socket is not correctly configured)'' erscheinen, so muss man den Servernamen in der {{ic|/etc/webapps/phpmyadmin/config.inc.php}} auf den Hostnamen ändern.


  Alias /andererPfadnachIP "/usr/share/webapps/phpMyAdmin"
  $cfg['Servers'][$i]['host'] = 'meinhostname';


Du solltest folgenden [https://bbs.archlinux.org/viewtopic.php?pid=632500 Thread] lesen.
Will man das Setupscript per <nowiki>http://localhost/phpmyadmin/setup</nowiki> benutzen musst man ein Verzeichnis {{ic|config}} unter {{ic|/usr/share/webapps/phpmyadmin}} erstellen udn entsprechend berechtigen.
 
Solltest du den Fehler "#2002 - The server is not responding (or the local MySQL server's socket is not correctly configured)" bekommen, kannst du "localhost" in <code>/etc/webapps/phpmyadmin/config.inc.php</code> in deinen Hostnamen ändern:
 
$cfg['Servers'][$i]['host'] = 'localhost';
 
Wenn du das das Setupscript; per http://localhost/phpmyadmin/setup; benutzen möchtest, musst du einen ''config'' Ordner, der Schreibzugriff erlaubt, unter <code>/usr/share/webapps/phpmyadmin</code> erstellen:


  cd /usr/share/webapps/phpMyAdmin
  cd /usr/share/webapps/phpMyAdmin
Zeile 121: Zeile 92:
  chgrp http config
  chgrp http config
  chmod g+w config
  chmod g+w config


[[Kategorie:Internet]]
[[Kategorie:Internet]]

Aktuelle Version vom 18. Januar 2022, 13:25 Uhr

phpMyAdmin ist ein webbasiertes Werkzeug zur Administration von MySQL-Datenbanken. Eine funktionierende Installation von Apache, sowie ein MySQL-Server wie z.B. MariaDB werden daher vorausgesetzt.

Installation

phpMyAdmin ist als phpmyadmin in any verfügbar, und kann von dort mittels Pacman installiert werden.

# phpMyAdmin an sich
pacman -S phpmyadmin

# Ebenfalls benötigt
pacman -S php-mcrypt

Konfiguration

Nach der Installation sollte man zuerst sicherstellen, dass keine vorhandene Konfiguration exisitert, damit es nicht zu Konflikten kommt. Dann kopiert man sich am einfachsten die Beispiel-Konfigurationsdatei an die passende Stelle.

cp /etc/webapps/phpmyadmin/apache.example.conf /etc/httpd/conf/extra/httpd-phpmyadmin.conf

In der Datei /etc/httpd/conf/httpd.conf muss folgendes ergänzt werden.

# phpMyAdmin configuration
Include conf/extra/httpd-phpmyadmin.conf

Berechtigungen setzen

Die Datei /etc/httpd/conf/httpd.conf muss entsprechend angepasst werden

Options Indexes FollowSymLinks
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   Options FileInfo AuthConfig Limit
#
AllowOverride All

In der Datei /usr/share/webapps/phpMyAdmin/.htaccess muss deny from all durch allow from all ersetzt werden.

Alternativ kann man den Zugang auf localhost und das lokale Netzwerk beschränken. Dazu muss die IP-Adresse an den entsprechenden Stellen angepasst werden

deny from all
allow from localhost
allow from 127.0.0.1
allow from ::1
allow from 192.168.1.0/24

phpMyAdmin-Konfiguration in Apache Prüfen

Die Datei /etc/httpd/conf/extra/httpd-phpmyadmin.conf sollte Folgendes enthalten:

Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"
<Directory "/usr/share/webapps/phpMyAdmin">
   AllowOverride All
   Options FollowSymlinks
   Require all granted
   php_admin_value open_basedir "/srv/: /tmp/:/usr/share/webapps/:/etc/webapps:/usr/share/pear/"
</Directory>

Es werden die PHP-Erweiterungen mysqli und mcrypt benötigt, wenn man die phpMyAdmin-interne Authentifizierung benutzen möchte. hierzu müssen die beiden entsprechenden Module ind er /etc/php/php.ini einkommentiert werden.

extension=mysqli.so
extension=mcrypt.so

Danach sollte man Apache neu starten.

Auf die phpMyAdmin-Installation zugreifen

Damit ist die Installation abgeschlossen. Vor der Verwendung sollte man aber Apache einmal final neu starten. Danach kann man über http://localhost/phpmyadmin/ auf phpMyAdmin zugreifen.

Dieser pfad lässt sich in der /etc/httpd/conf/extra/httpd-phpmyadmin.conf anpassen.

Alias /andererPfad "/usr/share/webapps/phpMyAdmin"

Hierzu auch [1] lesen.

blowfish_secret-Passphrase hinzufügen

Falls am unteren Rand der Seite folgende Fehlermeldung erscheint während man sich das erste mal unter /phpmyadmin anmeldet muss man ein Blowfish-Paswort in die Konfigurationsdatei einfügen.

ERROR: The configuration file now needs a secret passphrase (blowfish_secret)

Hierzu bearbeitet man /etc/webapps/phpmyadmin/config.inc.php entsprechend

$cfg['blowfish_secret'] = ; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Hier kann man ein gutes blowfish_secret erhalten.

$cfg['blowfish_secret'] = '..............'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Nach Neuladen der phphMyAdmin Seite sollte der Fehler verschwunden sein.

local MySQL server's socket is not correctly configured

Sollte beim Zugriff der Fehler #2002 - The server is not responding (or the local MySQL server's socket is not correctly configured) erscheinen, so muss man den Servernamen in der /etc/webapps/phpmyadmin/config.inc.php auf den Hostnamen ändern.

$cfg['Servers'][$i]['host'] = 'meinhostname';

Will man das Setupscript per http://localhost/phpmyadmin/setup benutzen musst man ein Verzeichnis config unter /usr/share/webapps/phpmyadmin erstellen udn entsprechend berechtigen.

cd /usr/share/webapps/phpMyAdmin
mkdir config
chgrp http config
chmod g+w config