Übersetzungen dieser Seite:
 

Dies ist eine alte Version des Dokuments!


Installation auf einem Webserver

Dieses Kapitel beschreibt die Installation von SoSci Survey auf einem eigenen Webserver.

Falls Sie eine bestehende Installation von SoSci Survey aktualisieren möchten, lesen Sie bitte Update der Installation.

Hinweis: Dieses Kapitel ist nicht relevant, wenn Sie SoSci Survey auf einem bestehenden Befragungsserver nutzen möchten (z.B. www.soscisurvey.de). Dort können Sie ohne Installation direkt ein Benutzerkonto und Befragungsprojekt registrieren (Übersicht).

Hinweis: SoSci Survey steht nicht öffentlich zum Download bereit. Unternehmen können Serverlizenzen für den Betrieb eines eigenen Befragungsservers erwerben (Preise und Gebühren). Wissenschaftliche Institutionen erhalten auf Anfrage eine kostenlose Hochschullizenz.

Systemanforderungen

Für die Installation von SoSci Survey benötigen Sie einen funktionierenden Webserver mit PHP- und Datenbank-Unterstützung. Die Installation von SoSci Survey setzt folgende Software voraus:

  • Webserver (i.d.R. Apache oder IIS) oder Webspace (s. unten)
  • PHP ab Version 5.5.0
  • MySQL-Datenbank ab Version 5.5.3

Für den optimalen Betrieb empfohlen:

  • Möglichkeit zur zeitgesteuerten Ausführung von Skripten (Cron-Jobs)
  • Betrieb von PHP ohne Einschränkungen (nicht im Safe-Mode)

Die Aufgabe des Webservers ist es, Inhalte vom Server im Internet/Intranet bereitzustellen. Damit dies funktioniert, müssen Webserver und ggf. Firewall korrekt konfiguriert sein. Bitte stellen Sie sicher, dass der Webserver via HTTP-/HTTPS-Protokoll erreichbar ist.

Tipp: Sofern Sie noch keinen Webserver haben und einen lokalen Server unter Windows einrichten möchten, spart das Installationspaket xampp der Apache Friends viel Arbeit. Es beinhaltet u.a. einen fertig konfigurierten Apache Webserver und MySQL.

Notiz: Die meisten günstigen Webspace-Angebote der Hoster sind sog. Shared Hosting. Dabei laufen auf einem Webserver hunderte oder tausende Internetangebote. Dieser Webspace wird schon zu Preisen von unter 2 EUR pro Monat angeboten. Damit sich die Angebote auf so einem Server nicht in die Quere kommen, werden die Funktionen aber oftmals ein wenig eingeschränkte (z.B. läuft PHP im sog. Safe Mode). Im Gegenzug muss man sich um die Installation und Einrichtung des Webservers beim Shared Hosting nicht weiter kümmern.

Vorbereitung

Folgende Software ist für die Installation hilfreich bzw. erforderlich:

  • Falls der Server nicht auf dem lokalen Computer läuft, benötigen Sie ein FTP-Programm zum Übertragen von Dateien auf den Server, z.B. FileZilla.
  • Für die Wartung der Datenbank ist ein Frontend hilfreich, z.B. HeidiSQL.
  • Sofern noch nicht geschehen, laden Sie sich das aktuelle Installationspaket für SoSci Survey im Download-Portal herunter. Für den Download benötigen Sie Ihre Lizenzdaten (Kennwort).

Falls Sie nicht eingehend mit der Rechteverwaltung auf Webservern vertraut sind, lesen Sie bitte Prozesse und Benutzer auf einem Webserver.

Server vorbereiten

Damit der Server korrekt mit SoSci Survey arbeitet, müssen Sie ein Verzeichnis für SoSci Survey anlegen und u.U. weitere Anpassungen vornehmen.

Datenbank konfigurieren

Damit SoSci Survey auf die Datenbank zugreifen kann, benötigen Sie Benutzername und Kennwort für die Datenbank.

Wichtig: Ein Datenbank-Nutzer speziell für SoSci Survey erhöht die Sicherheit des Servers gegen Angriffe. Daher wird dringend empfohlen, eine eigene Datenbank und einen eigenen Benutzer für SoSci Survey einzurichten.

Falls Sie für den Zugriff auf die Datenbank entgegen der Empfehlung das Benutzerkonto des Datenbank-Administrators verwenden (z.B. „root“), kann SoSci Survey selbstständig eine Datenbank anlegen – Sie können diesen Abschnitt dann überspringen.

  • Legen Sie auf dem Datenbankserver eine Datenbank für SoSci Survey an. SoSci Survey kann alternativ auch in einer bestehenden Datenbank installiert werden (falls z.B. nur eine Datenbank zur Verfügung steht). Wichtig: Der Name der Datenbank darf nur Kleinbuchstaben (und in MySQL erlaubte Zeichen) enthalten!
  • Legen Sie auf dem Datenbankserver ggf. einen neuen Nutzer für SoSci Survey an, der alle Rechte für die SoSci Survey-Datenbank besitzt (Tabellen anlegen, löschen, ändern, etc.), aber keine Rechte für andere Datenbanken. Dieser Nutzer sollte sich nur vom Webserver aus (normalerweise ist das „localhost“) in der Datenbank einloggen dürfen.

SoSci Survey auf den Webserver kopieren

Entpacken Sie das SoSci Survey Installationspaket und kopieren Sie die Dateien in das Verzeichnis, das Sie auf dem Server dafür vorgesehen haben.

Die folgenden Beispiele gehen davon aus, dass Sie SoSci Survey auf dem Server www.domain.tld im Unterverzeichnis bzw. Alias /sosci installieren. Die URL des Servers lautete entsprechend http://www.domain.tld/sosci/. Bitte ersetzen Sie die Domain jeweils durch die korrekte Domain und das Verzeichnis durch Ihr Installationsverzeichnis. Wenn Sie z.B. auf den lokalen Computer zugreifen lautet die korrekte URL etwa http://127.0.0.1/sosci/ (auf dem lokalen Computer wird i.d.R. eine IP-Adresse anstatt des Domain-Namens verwendet).

Testen Sie zunächst, ob Sie SoSci Survey über das Intranet bzw. Internet erreichen. Rufen Sie dafür die URL http://www.domain.tld/sosci/admin/-reach.php in Ihrem Internetbrowser auf. Der Bindestrich (-) ist wichtig. Wenn der Webserver korrekt erreichbar ist, steht im Browserfenster nun „reach“.

Nachfolgend sind einige häufige Probleme geschildert. Bitte lesen Sie ggf. auch nochmal die Anleitung Vorbereitung des Servers II (Apache) bzw. Vorbereitung des Servers II (Microsoft IIS).

  • Falls der Browser lange lädt und anschließend eine leere Seite oder einen Timeout anzeigt, wurde der Webserver entweder noch nicht gestartet, der Domainname stimmt nicht (beachten Sie, dass neue Domains erst nach einigen Stunden erreichbar sind) oder der Server ist nicht erreichbar (z.B. weil die Firewall die Verbindung blockiert).
  • Falls Sie eine Fehlermeldung „404 not found“ (oder ähnlich) erhalten, stimmt das angegebene Verzeichnis nicht oder das Installationsverzeichnis ist nicht im Pfad für Webdokumente bzw. es wurde kein Alias definiert. Überprüfen Sie zur Sicherheit auch noch einmal, ob die Domain/IP-Adresse korrekt geschrieben wurde.
  • Falls Sie eine Fehlermeldung „permission denied“ (oder ähnlich) erhalten, ist das Verzeichnis nicht für den Zugriff aus dem Internet freigegeben. Hier hilft die Dokumentation des Webservers weiter.
  • Falls Sie HTML-Code sehen, liefert Ihr Webserver die Datei als Textdatei und nicht als HTML aus. In diesem Fall müssen die MIME-Einstellungen des Webservers für PHP-Dateien korrigiert werden.

Testen Sie nun, ob PHP-Skripte korrekt verarbeitet werden. Rufen Sie dazu in ihrem Internetbrowser die URL http://www.domain.tld/sosci/admin/-php.php auf. Nun sollte in Ihrem Browser „php“ erscheinen.

  • Falls „failed“ oder weiterer Code erscheint, werden PHP-Dateien noch nicht an den PHP-Interpreter weitergereicht, sondern vom Webserver direkt ausgeliefert. In diesem Fall muss der Webserver korrekt konfiguriert werden.

Zugriffsrechte

Meist darf der Webserver Dateien auf der Festplatte nur lesen. Daher müssen Sie für einige Verzeichnisse manuell Schreibrechte vergeben. Die Einrichtung der Schreibrechte variiert je nach Server:

Bitte erteilen Sie dem Webserver (also dem Betriebssystem-Benutzer, mit dessen Rechten der Webserver agiert) Schreibrechte für folgende Verzeichnisse:

  • Das Installationsverzeichnis, in welches sie SoSci Survey kopiert haben. Dies ist notwendig, weil für jedes neue Befragungsprojekt ein eigenes Unterverzeichnisse angelegt wird. Setzen Sie die Schreibrechte ausschließlich für das Installationsverzeichnis und nicht für die enthaltenen Dateien und Verzeichnisse.
  • Alle Dateien und Verzeichnisse im Unterverzeichnis system, falls dieses bereits vorhanden ist. Hier wird die Konfiguration gespeichert und Logfiles sowie temporäre Dateien abgelegt. Hinweis: Das Verzeichnis system wird erst durch die Installationsroutine erstellt – wenn der Webserver korrekte Schreibrechte für das übergeordnete Verzeichnis hat, werden die Berechtigungen dabei automatisch gesetzt.

Auf einige Verzeichnisse muss der Webserver zugreifen, aber Webserver-Benutzer (Internet-Surfer) dürfen keinen Zugriff erhalten. Dies muss durch eine entsprechende Konfiguration des Webservers sichergestellt werden.

Das Installationspaket enthält einige Dateien mit dem Namen .htaccess – diese Dateien regeln u.a. die Zugriffsrechte auf einem standardmäßig konfigurierten Apache-Webserver die Zugriffsrechte. Testen Sie die korrekte Funktion, indem Sie die URLs http://www.domain.tld/sosci/inc/-reach.php und http://www.domain.tld/sosci/system/-reach.php aufrufen.

  • Wenn Sie ein „permission denied“ (oder ähnlich) erhalten, ist alles korrekt konfiguriert.
  • Wenn Sie auf die Dateien zugreifen können und einen Apache-Server verwenden, wurde die Konfiguration via .htaccess vermutlich deaktiviert. In diesem Fall müssen Sie den Zugriff in der Apache-Konfiguration (z.B. /etc/apache2/httpd.conf oder apache/conf/httpd.conf) mit einer Directory-Direktive unterbinden. Dabei müssen Sie das Installationsverzeichnis plus /inc bzw. /system angeben, z.B.
<Directory /var/www/sosci/inc/>
  Order allow,deny
  deny from all
</Directory>
<Directory /var/www/sosci/system/>
  Order allow,deny
  deny from all
</Directory>
  • Wenn Sie den IIS 7 einsetzen:
    (Das genauer Vorgehen Schritt für Schritt wird auf IIS: Request Filtering beschrieben)
    • Wählen Sie IIS Request Filtering
    • Wählen Sie den Karteireiter URL
    • Klicken Sie auf Deny Sequence
    • Geben Sie im PopUp „/inc“ ein und wiederholen Sie das Procedere für „/system“
  • Wenn Sie einen älteren IIS verwenden:
    • Öffnen Sie das Konfigurationstool (configuration tool) via Start → Settings → Control Panel → Administrative Tools → Internet Information Services
    • Navigieren Sie zum Installationsverzeichnis und dort zu /inc: Local Computer → Web Sites → Default Web Site → Installationsverzeichnis → inc
    • Lassen Sie sich mit einem Rechtsklick die Einstellungen für das Verzeichnis anzeigen: Properties → Directory Security → IP address and domain name restrictions → Edit
    • Wählen Sie „By default, all computers will be: Denied access“
    • Wiederholen Sie die letzten beiden Schritte für /system

PHP-Einstellungen

Die Installations-Routine (s. unten) überprüft die PHP-Einstellungen und warnt bei möglichen Problemem. Eine Einstellung, die meist geändert werden muss, betrifft die Dateigrößen:

  • Standardmäßig akzeptiert PHP beim Hochladen von Dateien in einem Formular nur Dateien bis 2 MB. Soll SoSci Survey auch das Hochladen von Mediendateien unterstützen, ist das zu wenig.
    • Stellen Sie daher für den Wert upload_max_filesize in der Datei php.ini den Wert 32M ein.
    • Falls die Variable post_max_size einen kleineren Wert hat, tragen Sie auch hier 32M ein. Letzteres vermeidet zudem Probleme mit sehr umfangreichen Fragebögen (z.B. viel HTML- oder PHP-Code).
    • Sollte für die Einstellung memory_limit ein Wert unter 32M eingestellt sein, muss auch dieser angehoben werden, damit das Hochladen von großen Dateien korrekt funktioniert. Um beim Upload wirklich genau an die obere Grenze von 32 MB zu kommen, muss dieser Wert sogar noch geringfügig höher liegen (z.B. 33M), weil oFb selbst auch etwas Speicher benötigt.
  • Wenn in einer Befragung viele Dateien (z.B. Bilder) hochgeladen werden sollen, ist die Übertragung aller Bilder in einem Arbeitsschritt sinnvoll. Wie viele Dateien zugleich übertragen werden, regel die Einstellung max_file_uploads. Die Standardkonfiguration mit 20 Bildern ist u.U. etwas knapp bemessen und kann z.B. auf 50 oder 100 erhöht werden.

Die anderen PHP-Einstellungen sind bei einer Standard-Installation bereits für SoSci Survey geeignet. Nachfolgend sind die nötigen Änderungen beschrieben, falls die Installationsroutine Alarm schlägt.

  • Der Safe Mode von PHP sollte deaktiviert sein, damit Skripte nicht nach 30 Sekunden abgebrochen werden.
    • Die maximale Laufzeit für PHP-Script wird durch die PHP-Einstellung „max_execution_time“ eingeschränkt. Allerdings ist es beim Herunterladen großer Datensätze oder bei der Durchführung der Server-Wartung notwendig, dass das Script diese Beschränkung aufheben kann. Dies ist dem Skript nur möglich, wenn PHP nicht im „Safe Mode“ läuft.
    • Zur Deaktivierung des Safe Mode suchen Sie in der PHP.INI den Eintrag safe_mode und tragen den Wert off ein.
    • Es ist nicht sinnvoll, die Einstellung für max_execution_time in der PHP.INI zu ändern. Der Standardwert von 30 Sekunden sorgt dafür, dass fehlerhaft programmierte Fragebögen (z.B. mit einer Endlosschleife) abgebrochen werden.
  • SoSci Survey erfordert für den korrekten Betrieb eine Reihe von PHP-Modulen.
    • Benötigt werden: `mysql`, `mbstring`, `zip`, `gd`, `curl` und unter PHP 5 evtl. `pcre` und `zlib`
    • Unter Linux werden diese Bibliotheken über entsprechende Pakete installiert, z.B. mittels `sudo apt-get install php-mysql php-mbstring php-zip php-gd php-curl`.
    • Unter Windows (z.B. XAMPP) lässt sich eine Bibliothek einfach aktivieren, indem in der PHP.INI das Semikolon vor der entsprechenden extension-Zeile entfernt wird. Anschließend muss der Webserver neu gestartet werden.
    • Nach der Aktivierung/Ergänzung von Modulen ist u.U. ein Neustart des Webservers notwendig, unter Debian-Linux etwa mittels /etc/init.d/apache2 restart.

MySQL-Einstellungen

Eine MySQL Standard-Installation ist für den Betrieb von SoSci Survey normalerweise gut geeignet. Werfen Sie dennoch einen Blick auf folgende Einstellungen. Eine Einstellung können Sie mit dem SQL-Befehl SHOW VARIABLES LIKE "max_user_connections" abfragen, wobei der letzte Teil natürlich durch die relevante Variable ersetzt wird.

  • MySQL sollte ausreichend Verbindungen zur Datenbank erlauben. Ist die maximale Anzahl erlaubter Verbindungen pro Nutzer max_user_connections zu gering (z.B. 16 oder weniger), wird dadurch u.U. die Anzahl der gleichzeitigen Befragungsteilnehmer eingeschränkt.
  • Bei Shared Hosting Angeboten sollte man das Verhältnis der Einstellungen für max_user_connections und max_connections kontrollieren: Falls es der Hoster besonders gut meint und beide Werte auf denselben hohen Wert (z.B. 512) einstellt, so kann dadurch das Problem einer Datenbank-Überlastung auftreten – und zwar durch einen anderen Nutzer auf dem Server, der alle Verbindungen belegt (z.B. durch ein fehlerhaftes Script).

Initialisierung

  • Rufen Sie das SoSci Survey Verzeichnis im Browser auf – und zwar via HTTP bzw. HTTPS: (http://www.domain.tld/sosci/). Die URL setzt sich aus Domain und Verzeichnis zusammen.
  • Sie sollten nun einen Hinweis sehen, dass eine Installation erforderlich ist – folgen Sie dem Link.
    • Hinweis: Die Installation (admin/install.php) können Sie alternativ direkt aufrufen (http://www.domain.tld/sosci/admin/install.php).
    • Hinweis: Beim Aufruf oder im Verlauf der Installation kann es zu längeren Wartezeiten kommen (bis ca. 2 Minuten). Die Installation testet dann die Datenbank- und Server-Konfiguration.
  • Die Installationsroutine möchte von Ihnen nun die Zugangsdaten für den Datenbankserver (Datenbank-Benutzer) sowie einige weitere Angaben wissen. Bitte nehmen Sie auch die Hinweise der Installationsroutine auf mögliche Probleme ernst.
    • Hinweis: Sie können alle Einstellungen später ändern bzw. anpassen.
    • Hinweis: Falls Sie nicht möchten, dass Unbekannte ein Befragungsprojekt auf Ihrem Server einrichten, sollten Sie in den Einstellungen ein Anmeldepasswort eingeben.
    • Hinweis: Sollte nach der Angabe des Datenbank-Server lange nichts passieren und/oder eine leere Seite erscheinen, stimmt vermutlich die Adresse des Datenbankservers nicht. Windows Server akzeptiert manchmal den Eintrag „localhost“ nicht und erwartet stattdessen die IP-Adresse 127.0.0.1. Testen Sie die Zugangsdaten ggf. mit einen Tool wie HeidiSQL.

Abschluss der Installation

Nach erfolgreicher Installation können Sie sich als Administrator anmelden. Sie sollten umgehend ein Passwort festlegen:

  • Melden Sie sich im Administrator-Login „admin“ an
  • Nach dem Login geben Sie bitte zunächst eine E-Mail-Adresse für das Administratorkonto an, unter BenutzerkontoBenutzerdaten.
  • Unter Server-Verwaltung → „Server-Einstellungen“ können Sie nun weitere Einstellungen für den Server vornehmen.

Nun ist die Installation abgeschlossen. Ab sofort können weitere Benutzerkonten registriert und Befragungsprojekte eingerichtet werden (Benutzerkonto und Befragungen einrichten).

Automatisierung regelmäßiger Aufgaben

Für die optimale Ausführung von SoSci Survey sollten zwei PHP-Skripte regelmäßig aufgerufen werden: Die regelmäßige Wartung des Servers (einmal täglich) und die Ausführung zeitgesteuerter Aufgaben.

Weitere Schritte

de/server/start.1515403518.txt.gz · Zuletzt geändert: 08.01.2018 10:25 von admin
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki