Anmelden

PHP-System herstellen

PHP-Einstellungen in php.ini

Einstellung

Wert

Erläuterung

register_globals

On

Durch die Einstellung werden Superglobals ($_REQUEST usw. in gleichnamige Variablen geschrieben. Ab PHP 5.3 wird diese Einstellung nicht mehr unterstützt. Es müssen folgende Zeilen in sys.config aufgenommen werden:

extract($_REQUEST);
extract($_SERVER);
extract($_COOKIE);

Ab campus21 Release 19.2 (siehe Release-Planung) werden die globals bzw. extract() nicht mehr benötigt.

short_open_tag On Die Einstellung aktiviert kurze PHP Tags < ? ... ?>, welche durch campus21-Framework verwendet werden (ansonsten nur < ?php ... ?> möglich).

magic_quotes_gpc

Off

Wenn magic_quotes_gpc=Off, denn muss SQL-Schutz im Programmcode erledigt werden. Das übernimmt DbObject::Save(), DbPg::Encode() und DbPg::Format(). Alle SysGrid/SysList-Ableitungen u.a. müssen dies bei der Filtererstellung erledigen.

http://php.net/manual/de/security.magicquotes.disabling.php

http://php.net/manual/de/info.configuration.php#ini.magic-quotes-gpc

Wenn magic_quotes_gpc=On (default), dann wird in allen GET/POST/COOKIE-Variablen ' " und \ mit zusätzlichem Backslash \ versehen (aus ' wird \' usw.). Damit besteht optimaler SQL-Schutz, die Werte können unverarbeitet and die DAL weitergegeben werden. Alledings muss \ entfernt werden, wenn per GET/POST/COOKIE übermittelte Variable zur Anzeige kommt, das ist aufwendig (aktuell durch FormObject::Loaded entfernt). Außerdem muss ein \ eingefügt werden, wenn Eingabewerte für SQL nich aus dem Request (Formular) kommen.

Unter PHP ab 5.4 ist die Einstellung nicht mehr existent. Die Verwendung magic_quotes_gpc wurde aus aktuellen Releases des campus21 Frameworks entfernt.

upload_max_filesize 20 Begrenzt die Größe von hochzuladenen Dateien.
post_max_size 20 Begrenzt die Größe von Request und damit auch von hochzuladenen Dateien.
extension ... Folgende Extensions müssen aktiviert werden sofern nicht in der PHP-Installation statisch enthalten. Prüfen kann man die Aktivierung von Extensions mittels der Ausgabe von phpinfo(). Für jede Extension wir ein entsprechender Abschnitt ausgegeben (Angabe in Klammern).
  • php_curl.dll (LanguageTool)
  • php_gd2.dll (gd)
  • php_pgsql.dll (pgsql)
  • php_soap.dll (soap)
  • php_sockets.dll (sockets)
extension_dir

Die Datei php.ini befindet sich je nach Linux-Distribution und Version an verschiedenen Pfaden. Mögliche Pfade:

/etc/php5/apache2/php.ini
/etc/php/7.0/apache2/php.ini

Prüfen kann man PHP-Einstellungen diese mittels der Ausgabe von phpinfo(). Dazu muss eine PHP-Datei mit folgendem Inhalt erstellt werden;

<?php 
phpinfo();
?>

Diese Datei kann mittels PHP-Kommandozeile oder über den Webserver aufgerufen werden:

http://localhost/nsoft/phpinfo.php

php {Pfad}phpinfo.php

Konfiguration

Die Konfiguration besteht primär aus *.config-Dateien und *.custom-Dateien. Die *.config-Dateien enthalten systembezogene Konfigurationen (Datenbankverbindung, Pfade). Die *.custom-Dateien enthalten anwendungsbezogene Einstellungen, welche aus den Systemeinstellungen generiert werden und über das Frontend verwaltet werden, siehe Konfigurationskonzept.

Zusammenfassend müssen folgende Arbeiten durchgeführt werden:

  • in sys.config Datenverbindung ergänzen und anpassen:
	include_once($sys_root."sys/classes/DbPg.asp");
$postgres_srv = "localhost";
$postgres_uid = "postgres";
$postgres_pwd = "postgres";
$postgres_db = "hsm";
global $g_db;
$g_db = new DbPg();

Superkennwort

Das Testsystem besitzt ein Superkennwort, mit dem man jede Nutzeridentität annehmen kann (User-Switch), was für den Test der Systemsicherheit und der Workflows notwendig ist. Dieses Superkennwort wird aktiviert unter cms.custom in Variable $CmsUser_password["*"] = "rsWQhukIugSYI"; Es lautet standardmäßig intranet.

Nach dem das PHP-Frontend läuft, kann man das Superkennwort ändern kann (http://localhost/nsoft/sys/config/index.asp). Dazu muss man einen Konfigurationseintrag mit Schlüsselname CmsUser_password und Schlüsselindex * und Wert mit dem neuen Kennwort erstellen (Flags System, Prototyp, Liste anklicken). Anschließend die Datei cms.custom erstellen.

   
Top

Wir arbeiten mit Software von http://www.campus21.de.

Verantwortlich für angezeigte Daten ist der Webdomain-Eigentümer laut Impressum.

Suche