Copying sources and texts (also in parts) for publishing without our permission is NOT ALLOWED. We are fed up with finding our work on other sites (like stackoverflow).
Das Kopieren von Quellcode und Texten (auch in Auszügen) ist nicht erlaubt. Wir haben es gründlich satt, unsere Arbeit auf anderen Webseiten zu finden.

Copying for non-public usage is allowed.           Das private Kopieren und Benutzen ist natürlich erlaubt und erwünscht.

Kategorie "PHP"

16. Nov 2018
Teaser

Netdata auf einem Debian Server installieren

Sicherheitshinweis:
Bitte beachten Sie, dass (derzeit) der Netdata Port (19999) nicht per Passwort o.ä. geschützt ist. Jeder (!) kann daher auf Ihrem Server die Netdata Seite aufrufen und (wie Sie) nutzen !

Voraussetzungen installieren:

apt-get install git zlib1g-dev uuid-dev libmnl-dev pkg-config curl gcc autogen autoconf autoconf-archive make automake netcat python python-yaml nodejs lm-sensors python-psycopg2 python-mysqldb

Aktuelle Netdata Sourcen von Github kopieren:

git clone https://github.com/firehol/netdata.git --depth=1 ~/netdata

In das Verzeichnis wechseln:

cd ~/netdata

Die Netdata Installation starten:

./netdata-installer.sh

Ihnen wird eine Übersicht mit den Installationspfaden angezeigt:

  ^
  |.-.   .-.   .-.   .-.   .  netdata
  |   '-'   '-'   '-'   '-'   real-time performance monitoring, done right!
  +----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+--->


  You are about to build and install netdata to your system.

  It will be installed at these locations:

   - the daemon     at /usr/sbin/netdata
   - config files   in /etc/netdata
   - web files      in /usr/share/netdata
   - plugins        in /usr/libexec/netdata
   - cache files    in /var/cache/netdata
   - db files       in /var/lib/netdata
   - log files      in /var/log/netdata
   - pid file       at /var/run/netdata.pid
   - logrotate file at /etc/logrotate.d/netdata

  This installer allows you to change the installation path.
  Press Control-C and run the same command with --help for help.

Press ENTER to build and install netdata to your system >

Wenn Sie einverstanden sind, dann drücken Sie “Enter” … ansonsten können Sie mit “Strg+C” hier die Installtion abbrechen.

Sobald die Installation beendet ist (meist nach ca. 1-2 Minuten, je nach Serverleistung), erhalten Sie folgende Anzeige:

If you want to have version update check, please re-install it
following the procedure in:

https://github.com/netdata/netdata/wiki/Installation

 --- Check apps.plugin ---
 --- Generate netdata-uninstaller.sh ---
 --- Basic netdata instructions ---

netdata by default listens on all IPs on port 19999,
so you can access it with:

  http://this.machine.ip:19999/

To stop netdata run:

  systemctl stop netdata

To start netdata run:

  systemctl start netdata

Uninstall script generated: ./netdata-uninstaller.sh
Update script generated   : ./netdata-updater.sh

netdata-updater.sh can work from cron. It will trigger an email from cron
only if it fails (it does not print anything when it can update netdata).
Run this to automatically check and install netdata updates once per day:

sudo ln -fs /root/netdata/netdata-updater.sh /etc/cron.daily/netdata-updater

 --- We are done! ---

  ^
  |.-.   .-.   .-.   .-.   .-.   .  netdata                          .-.   .-
  |   '-'   '-'   '-'   '-'   '-'   is installed and running now!  -'   '-'
  +----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+--->

  enjoy real-time performance and health monitoring...

Ab jetzt können Sie die Oberfläche von Netdata in Ihrem Browser öffnen. Ersetzen Sie dafür im folgenden Befehl “domain.de” durch Ihren Servernamen oder Ihre Server-IP:

http://domain.de:19999

Bitte beachten Sie, dass SSL Verbindungen (derzeit) nicht bzw. nur über Umwege möglich sind. Aufrufe per “https://…” führen daher zu einer Fehlermeldung.

Folgende Befehle können Sie auch im späteren Einsatz von Netdata benötigen:

Netdata starten

systemctl start netdata

Netdata stoppen

systemctl stop netdata

Den aktuellen Netdata Status (läuft, gestoppt, ggf. Fehler) anzeigen

systemctl status netdata

Updates installieren

cd ~/netdata
git pull
./netdata-installer.sh

Netdata deinstallieren

cd ~/netdata
./netdata-uninstaller.sh --force
27. Jun 2018
Teaser

Netbeans: Langsam beim Committen und Speichern

Netbeans ist bei der Dateiverarbeitung und dem Committen von Source (insbesondere bei SVN) auffällig langsam ?

Dann hilft meist eine Deaktivierung des “DeepStatusRefresh” über Kommandozeilen-Parameter:

"C:\Program Files\NetBeans 8.2\bin\netbeans64.exe" -J-Dnetbeans.subversion.commit.deepStatusRefresh=false

Dadurch wird der Datenaustausch mit dem SVN Repository reduziert und es kann schneller committed werden.

Danach Netbeans neu starten.

21. Jun 2018
Teaser

Slim (PHP): Fehler “Class ‘Twig_Environment’ not found”

Wenn Ihre WebAnwendung basierend auf dem “slim framework” nach einem Umzug oder einer Installation folgenden Fehler ausgibt:

Slim Application Error

stderr: Slim Application Error:
stderr: Type: Error
stderr: Message: Class 'Twig_Environment' not found
stderr: File: /home/folder/vendor/slim/twig-view/src/Twig.php
stderr: Line: 58

… dann lösen häufig folgende Schritte das Problem:

  1. PHP Version überprüfen (check PHP version)
    Prüfen Sie, ob die auf dem Server eingestellte PHP Version für Ihre WebAnwendung passend ist. Meist wird z.Bsp. für PHP v5 entwickelt und auf dem Server läuft schon PHP v7.2
  2. Berechtigungen für die Ordner & Dateien prüfen (check file & folder permissions)
    Evtl. durch das Kopieren oder manuelle EInrichten können Berechtigungen für Ordner und/oder Dateien fehlerhaft sein.
    Prüfen Sie CHMOD und CHOWN !
  3. Manchmal hilft auch (warum auch immer) folgender Vorgang:
    Öffnen Sie die Datei “…/vendor/slim/twig-view/src/Twig.php” und speichern Sie diese ohne Änderung einfach wieder ab.
    (open and save the file …/vendor/slim/twig-view/src/Twig.php)
28. Nov 2017
Teaser

Sicherheit: Verlorenes Passwort im Codiad Editor

Wenn Sie den Codiad WebEditor benutzen und Ihr Passwort vergessen haben, dann kann Ihnen diese Lösung helfen:

Öffnen Sie im codiad Verzeichnis die Datei “data/users.php”:

nano data/users.php
<?php
/*|[{"username":"john","password":"6bf7d9cab423e10349e3bd0389d11697e7080ba9","project":"\/home\/john\/public_html\/projects"}]|*/
?>

Setzen Sie vorübergehend das Passwort für John auf “login” indem Sie den Inhalt von “password” auf “93ceb7962cf40688f3c465ba57ff7286893fd19e” ändern:

<?php
/*|[{"username":"john","password":"93ceb7962cf40688f3c465ba57ff7286893fd19e","project":"\/home\/john\/public_html\/projects"}]|*/
?>

Beenden Sie nano durch “Strg + X” und speichern Sie die Änderungen ab.

Sie können sich nun in Codiad wieder anmelden. In diesem Beispiel mit Benutzer “john” und dem Passwort “login”.

Fertig.

Vergessen Sie bitte nicht, Ihr Passwort in Codiad wieder zu ändern. Gehen Sie dafür in das Menü auf der rechten Bildschirmseite, klicken Sie “Password” an und geben Sie ein neues, geheimes Passwort ein.

Wenn Sie gerne direkt ein eigenes und verschlüsseltes Passwort in die “users.php” eintragen möchten, dann können Sie den Passwort Hash mithilfe der folgenden PHP Datei selber erzeugen. Es ist recht einfach: Ihr Passwort wird zuerst per MD5 codiert und dann über dieses Ergebnis ein SHA1 laufen gelassen:

nano getCodiadPassword.php
<?php

echo sha1(md5("PASSWORD")) . "\n";
php getCodiadPassword.php
508b38590a90d32990aadd7350d160b795c3ab41

Das wäre der Hash für den Text “PASSWORD”.

20. Okt 2017
Teaser

Symfony: “An exception occured in driver: could not find driver”

Nach der Eingabe des folgenden Befehles

php bin/console doctrine:database:create --connection=system

erhalten Sie diese Ausgabe:

[Doctrine\DBAL\Exception\DriverException]              
An exception occured in driver: could not find driver  
                                                         
[Doctrine\DBAL\Driver\PDOException]  
could not find driver                
                                       
[PDOException]         
could not find driver  
                         
doctrine:database:create [--shard SHARD] [--connection [CONNECTION]] [--if-not-exists] [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [-e|--env ENV] [--no-debug] [--] <command>

Die Lösung:

Weil die mysql_dbo scheinbar nicht automatisch installiert wird, greift die Treiberanfrage von Symfony ins Leere. Durch die Installation der PHP Erweiterung wird diese Lücke geschlossen:

apt-get install php-mysql