<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.hostsharing.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Chh00</id>
	<title>Hostsharing Wiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.hostsharing.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Chh00"/>
	<link rel="alternate" type="text/html" href="https://wiki.hostsharing.net/index.php?title=Spezial:Beitr%C3%A4ge/Chh00"/>
	<updated>2026-04-28T17:19:42Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki.hostsharing.net/index.php?title=PHP&amp;diff=5963</id>
		<title>PHP</title>
		<link rel="alternate" type="text/html" href="https://wiki.hostsharing.net/index.php?title=PHP&amp;diff=5963"/>
		<updated>2022-12-11T12:30:17Z</updated>

		<summary type="html">&lt;p&gt;Chh00: /* Vorinstallierte PHP Version wechseln */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;PHP wird heute bei HS standardmäßig per FastCGI vorkonfiguriert. Dafür wird in jedem Domainverzeichnis unter fastcgi/ eine phpstub Datei angelegt und der Apache Webserver ist konfiguriert .php Dateien über diesen &amp;quot;Stub&amp;quot; mit den Rechten des Users auszuführen.&lt;br /&gt;
&lt;br /&gt;
Zur Wiederherstellung des originalen phpstub ist dieser zentral abgelegt als&lt;br /&gt;
&lt;br /&gt;
  /usr/local/src/phpstub&lt;br /&gt;
&lt;br /&gt;
Anwender, die lediglich PHP-Dateien hochgeladen haben, brauchen ausdrücklich keine eigene php.ini.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Anpassung der PHP Grundkonfiguration === &lt;br /&gt;
&lt;br /&gt;
Um die PHP Konfiguration an eigene Bedürfnisse anzupassen, legt man eine Konfigurationsdatei namens php.ini im fastcgi Verzeichnis der Domain an (für https:// entsprechend im -ssl Verzeichnis) z.B.: /home/pacs/xyz00/users/meinbenutzer/doms/meinedomain.de/fastcgi-ssl/php.ini. In dieser Datei müssen nicht alle Konfigurationsoptionen von PHP definiert sein, sondern nur die, die sich gegenüber der Standard php.ini ändern sollen. Diese liegt in /etc/php/VERSION/cgi und kann dort eingesehen werden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Achtung:&#039;&#039;&#039; Kommentare nicht mit # einleiten (kann zu unerwarteten Fehlkonfigurationen führen), Kommentarzeichen ist das Semikolon &amp;quot;;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Häufig anzupassen sind z.B.:&lt;br /&gt;
&lt;br /&gt;
* die Content-Type charset= Vorgabe für den HTTP Header.&lt;br /&gt;
&lt;br /&gt;
* der maximal verwendbare Hauptspeicher (memory_limit).&lt;br /&gt;
&lt;br /&gt;
* die maximale Größe hochgeladener Dateien (post_max_size).&lt;br /&gt;
&lt;br /&gt;
* die aktiven Extensions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Beispiel einer php.ini: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 ------8&amp;lt; SCHNIPP &amp;gt;8------&lt;br /&gt;
 [..]&lt;br /&gt;
 memory_limit = 128M (default)&lt;br /&gt;
 post_max_size = 8M (default)&lt;br /&gt;
 upload_max_filesize = 2M (default)&lt;br /&gt;
 display_errors = Off (default)&lt;br /&gt;
 log_errors = Off (default)&lt;br /&gt;
 error_log = /home/pacs/xyz00/users/meinbenutzer/doms/meinedomain.de/fastcgi-ssl/php_errors.log&lt;br /&gt;
&lt;br /&gt;
 [..]&lt;br /&gt;
 default_charset = &amp;quot;UTF-8&amp;quot;&lt;br /&gt;
 ; (ist sonst iso-8859-1)&lt;br /&gt;
 ; Der charset kann aber wiederum durch einen Funktionsaufruf&lt;br /&gt;
 ; header(&amp;quot;Content-Type: text/html; charset=iso-8859-1&amp;quot;)&lt;br /&gt;
 ; im PHP-Skript überschrieben werden (sofern output_buffering = On).&lt;br /&gt;
 ------8&amp;lt; SCHNIPP &amp;gt;8------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Beachte:&#039;&#039;&#039; Eine geänderte php.ini Konfiguration wird mit FastCGI erst übernommen, wenn die PHP Prozesse des Users (die über längere Zeit laufen bleiben) neu gestartet werden.&lt;br /&gt;
&lt;br /&gt;
Die Brechstange, mit der das Neustarten der PHP Prozesse erzwungen werden kann, ist diese zu killen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
killall -u $USER -r php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
$USER = ist der aktuell angemeldeten Benutzer und muss nicht durch den Benutzernamen (xyz00 oder xyz00-user) ersetzt werden. Nur die Prozesse des angemeldeten Users $USER werden gelöscht. &amp;quot;-r&amp;quot; bewirkt, dass der Ausdruck &amp;quot;php&amp;quot; als regulärer Ausdruck interpretiert wird. Intern heißen die sichtbaren Prozesse nicht &amp;quot;php&amp;quot; sondern beispielsweise &amp;quot;php7.2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== PHP Sicherheit ===&lt;br /&gt;
&lt;br /&gt;
==== open_basedir ====&lt;br /&gt;
&lt;br /&gt;
Sofern der PHP Parameter open_basdir nicht gesetzt ist (Vorgabe) können (kompromittierte) php Skripte an alle Dateien des Users kommen, ohne einen extra Shellzugang installieren zu müssen und dadurch entdeckt zu werden.&lt;br /&gt;
&lt;br /&gt;
Die Passwortabfrage von Hsadmin bringt eine Abhilfe für die zentralen Dienste. (Sofern Du dein Passwort nicht in eine Datei schreibst und die Abfrage so wieder ausschaltest, wovon besser abzusehen ist.) Doch alle Daten auf die Du als Benutzer zugreifen kannst sind prinzipiell den PHP-Skripten ausgeliefert.&lt;br /&gt;
&lt;br /&gt;
Mit open_basedir wird festgelegt in welchen Verzeichnissen PHP Skripte lesen und schreiben dürfen. Geprüft wird dabei ob der zu öffnende Pfad mit dem angegebene Pfad beginnt. Es ist daher wichtig ob sich am Ende ein &amp;quot;/&amp;quot; befindet oder nicht. Ein open_basedir von /home/doms/example.org/subs/www (ohne /) erlaubt somit z.B. auch Zugriffe auf die Subdomain www2 etc.&lt;br /&gt;
&lt;br /&gt;
Beispielzeile für die php.ini:&lt;br /&gt;
 open_basedir = /home/doms/example.org/subs/&lt;br /&gt;
&lt;br /&gt;
Wenn man mehrere Subdomains hat und diese isolieren möchte, ist dies durch Aufschaltung von lokalen Subdomains auf verschiedene User möglich. (Siehe https://doc.hostsharing.net/users/administration/domain/index.html )&lt;br /&gt;
&lt;br /&gt;
==== Sicherheitskritische Funktionen ====&lt;br /&gt;
&lt;br /&gt;
Weitere Dinge die deaktiviert werden sollten, wenn sie nicht benötigt werden, was im allgemeinen der Fall ist, sind: Das öffnen von URLs als Dateien,&lt;br /&gt;
&lt;br /&gt;
 allow_url_fopen = Off&lt;br /&gt;
&lt;br /&gt;
und die Ausführung von Systembefehlen.&lt;br /&gt;
&lt;br /&gt;
 disable_functions = show_source, system, passthru, shell_exec, exec, phpinfo, popen, proc_open&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  eigene PHP Konfigurationen und verschiedene nebeneinander verwenden ===&lt;br /&gt;
&lt;br /&gt;
Um verschiedene PHP Konfigurationen nebeneinander zu verwenden, kopierst Du den phpstub in ein Unterzeichnis von (fast)cgi(-ssl) und mappst (Einträge in der .htaccess) nach Belieben deine PHP Dateien darauf. &lt;br /&gt;
So können beliebig viele Konfigurationen bei einer Domain nebeneinander genutzt werden.&lt;br /&gt;
&lt;br /&gt;
==== Beispiel muster.example.com ==== &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir ~/doms/example.com/fastcgi/muster&lt;br /&gt;
cp ~/doms/example.com/fastcgi/phpstub ~/doms/example.com/fastcgi/muster/phpstub&lt;br /&gt;
&lt;br /&gt;
und wenn benötigt:&lt;br /&gt;
vi ~/doms/example.com/fastcgi/muster/php.ini&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anschließend muss der Apache Webserver noch angewiesen werden auch diese bestimmte Konfiguration von PHP zu verwenden. Dazu werden der [[.htaccess]] Datei im DocumentRoot der Sub-Domain zwei Zeilen hinzugefügt bzw. eine .htaccess mit den zwei Zeilen angelegt. &lt;br /&gt;
Im Beispiel handelt es sich um die Domain muster.example.com, also:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 cd ~/doms/example.com/subs/muster&lt;br /&gt;
 vi .htaccess&lt;br /&gt;
&lt;br /&gt;
 AddType application/x-httpd-phpfastcgi .php&lt;br /&gt;
 Action application/x-httpd-phpfastcgi /fastcgi-bin/muster/phpstub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Vorinstallierte PHP Version wechseln ==&lt;br /&gt;
Hostsharing bietet neben der aktuellen Standardversion 7.4 auch PHP 7.0, 7.1, 7.2,  7.3 und 8.0, 8.1 an.&lt;br /&gt;
&lt;br /&gt;
Um die Version zu wechseln, genügt es, den jeweiligen phpstub auszutauschen. Version 7.3 liegt unter &amp;lt;code&amp;gt;/usr/local/src/phpstub/phpstub73&amp;lt;/code&amp;gt;; das Versionformat ist entsprechend &amp;lt;code&amp;gt;/usr/local/src/phpstub/phpstubXX&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===phpstub für PHP 8.0 kopieren===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cp /usr/local/src/phpstub/phpstub80 ~/doms/example.com/fastcgi/&lt;br /&gt;
$ cp /usr/local/src/phpstub/phpstub80 ~/doms/example.com/fastcgi-ssl/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===phpstub für PHP 8.0 aktivieren===&lt;br /&gt;
&lt;br /&gt;
Die .htaccess sollte möglichst zentral im Verzeichnisbaum abgelegt werden:&lt;br /&gt;
 ~/doms/example.com/.htaccess&lt;br /&gt;
Damit durch Anwendungs eigene .htaccess Dateien (Wordpress, Nextcloud etc.) nicht unbeabsichtigt die php Einstellungen verloren gehen.&lt;br /&gt;
In der zentralen &amp;lt;code&amp;gt;.htaccess&amp;lt;/code&amp;gt; eines Ordners genügt es, die PHP Dateizuordnung zu überschreiben:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
AddType application/x-httpd-php80 .php&lt;br /&gt;
Action application/x-httpd-php80 /fastcgi-bin/phpstub80&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===PHP 8.0 für ssh-Zugang per Shell aktivieren===&lt;br /&gt;
&lt;br /&gt;
Möchte man an der Shell immer /usr/bin/php8.0 statt /usr/bin/php aufrufen, dann kann der Befehl auch in die Datei &amp;quot;~/.profile&amp;quot; ergänzt werden  mit der Zeile: &lt;br /&gt;
&amp;lt;pre&amp;gt;alias php=&#039;/usr/bin/php8.0&#039;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nach Aktualisierung der Datei &amp;quot;~/.profile&amp;quot; noch eingeben &lt;br /&gt;
&amp;lt;pre&amp;gt;$ source ~/.profile&amp;lt;/pre&amp;gt;&lt;br /&gt;
Dann sollte der Aufruf php -v die version php 8.0 zurückgeben. &lt;br /&gt;
&lt;br /&gt;
Gleiches gilt natürlich auch andere bei HS verfügbare PHP Versionen.&lt;br /&gt;
&lt;br /&gt;
== Eigene PHP Version ==&lt;br /&gt;
Es kann auch eine eigene PHP Version im Paket installiert werden.&lt;br /&gt;
Eine kurz Anleitung ist unter [[Eigene_PHP_Version]] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Eigener PHP FPM Prozess ==&lt;br /&gt;
&lt;br /&gt;
auf einem Managed Server kann jeder Nutzer nach belieben auch php-fpm als eigenen Prozess starten.&lt;br /&gt;
Ein paar Notizen dazu finden sich auf der Seite [[PHP_FPM]].&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Kategorie:HSDoku]]&lt;br /&gt;
[[Kategorie:Installationsanleitungen]]&lt;br /&gt;
[[Kategorie:Software]]&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:WWW]]&lt;/div&gt;</summary>
		<author><name>Chh00</name></author>
	</entry>
	<entry>
		<id>https://wiki.hostsharing.net/index.php?title=PHP&amp;diff=5962</id>
		<title>PHP</title>
		<link rel="alternate" type="text/html" href="https://wiki.hostsharing.net/index.php?title=PHP&amp;diff=5962"/>
		<updated>2022-12-11T12:25:56Z</updated>

		<summary type="html">&lt;p&gt;Chh00: /* Vorinstallierte PHP Version wechseln */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;PHP wird heute bei HS standardmäßig per FastCGI vorkonfiguriert. Dafür wird in jedem Domainverzeichnis unter fastcgi/ eine phpstub Datei angelegt und der Apache Webserver ist konfiguriert .php Dateien über diesen &amp;quot;Stub&amp;quot; mit den Rechten des Users auszuführen.&lt;br /&gt;
&lt;br /&gt;
Zur Wiederherstellung des originalen phpstub ist dieser zentral abgelegt als&lt;br /&gt;
&lt;br /&gt;
  /usr/local/src/phpstub&lt;br /&gt;
&lt;br /&gt;
Anwender, die lediglich PHP-Dateien hochgeladen haben, brauchen ausdrücklich keine eigene php.ini.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Anpassung der PHP Grundkonfiguration === &lt;br /&gt;
&lt;br /&gt;
Um die PHP Konfiguration an eigene Bedürfnisse anzupassen, legt man eine Konfigurationsdatei namens php.ini im fastcgi Verzeichnis der Domain an (für https:// entsprechend im -ssl Verzeichnis) z.B.: /home/pacs/xyz00/users/meinbenutzer/doms/meinedomain.de/fastcgi-ssl/php.ini. In dieser Datei müssen nicht alle Konfigurationsoptionen von PHP definiert sein, sondern nur die, die sich gegenüber der Standard php.ini ändern sollen. Diese liegt in /etc/php/VERSION/cgi und kann dort eingesehen werden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Achtung:&#039;&#039;&#039; Kommentare nicht mit # einleiten (kann zu unerwarteten Fehlkonfigurationen führen), Kommentarzeichen ist das Semikolon &amp;quot;;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Häufig anzupassen sind z.B.:&lt;br /&gt;
&lt;br /&gt;
* die Content-Type charset= Vorgabe für den HTTP Header.&lt;br /&gt;
&lt;br /&gt;
* der maximal verwendbare Hauptspeicher (memory_limit).&lt;br /&gt;
&lt;br /&gt;
* die maximale Größe hochgeladener Dateien (post_max_size).&lt;br /&gt;
&lt;br /&gt;
* die aktiven Extensions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Beispiel einer php.ini: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 ------8&amp;lt; SCHNIPP &amp;gt;8------&lt;br /&gt;
 [..]&lt;br /&gt;
 memory_limit = 128M (default)&lt;br /&gt;
 post_max_size = 8M (default)&lt;br /&gt;
 upload_max_filesize = 2M (default)&lt;br /&gt;
 display_errors = Off (default)&lt;br /&gt;
 log_errors = Off (default)&lt;br /&gt;
 error_log = /home/pacs/xyz00/users/meinbenutzer/doms/meinedomain.de/fastcgi-ssl/php_errors.log&lt;br /&gt;
&lt;br /&gt;
 [..]&lt;br /&gt;
 default_charset = &amp;quot;UTF-8&amp;quot;&lt;br /&gt;
 ; (ist sonst iso-8859-1)&lt;br /&gt;
 ; Der charset kann aber wiederum durch einen Funktionsaufruf&lt;br /&gt;
 ; header(&amp;quot;Content-Type: text/html; charset=iso-8859-1&amp;quot;)&lt;br /&gt;
 ; im PHP-Skript überschrieben werden (sofern output_buffering = On).&lt;br /&gt;
 ------8&amp;lt; SCHNIPP &amp;gt;8------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Beachte:&#039;&#039;&#039; Eine geänderte php.ini Konfiguration wird mit FastCGI erst übernommen, wenn die PHP Prozesse des Users (die über längere Zeit laufen bleiben) neu gestartet werden.&lt;br /&gt;
&lt;br /&gt;
Die Brechstange, mit der das Neustarten der PHP Prozesse erzwungen werden kann, ist diese zu killen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
killall -u $USER -r php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
$USER = ist der aktuell angemeldeten Benutzer und muss nicht durch den Benutzernamen (xyz00 oder xyz00-user) ersetzt werden. Nur die Prozesse des angemeldeten Users $USER werden gelöscht. &amp;quot;-r&amp;quot; bewirkt, dass der Ausdruck &amp;quot;php&amp;quot; als regulärer Ausdruck interpretiert wird. Intern heißen die sichtbaren Prozesse nicht &amp;quot;php&amp;quot; sondern beispielsweise &amp;quot;php7.2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== PHP Sicherheit ===&lt;br /&gt;
&lt;br /&gt;
==== open_basedir ====&lt;br /&gt;
&lt;br /&gt;
Sofern der PHP Parameter open_basdir nicht gesetzt ist (Vorgabe) können (kompromittierte) php Skripte an alle Dateien des Users kommen, ohne einen extra Shellzugang installieren zu müssen und dadurch entdeckt zu werden.&lt;br /&gt;
&lt;br /&gt;
Die Passwortabfrage von Hsadmin bringt eine Abhilfe für die zentralen Dienste. (Sofern Du dein Passwort nicht in eine Datei schreibst und die Abfrage so wieder ausschaltest, wovon besser abzusehen ist.) Doch alle Daten auf die Du als Benutzer zugreifen kannst sind prinzipiell den PHP-Skripten ausgeliefert.&lt;br /&gt;
&lt;br /&gt;
Mit open_basedir wird festgelegt in welchen Verzeichnissen PHP Skripte lesen und schreiben dürfen. Geprüft wird dabei ob der zu öffnende Pfad mit dem angegebene Pfad beginnt. Es ist daher wichtig ob sich am Ende ein &amp;quot;/&amp;quot; befindet oder nicht. Ein open_basedir von /home/doms/example.org/subs/www (ohne /) erlaubt somit z.B. auch Zugriffe auf die Subdomain www2 etc.&lt;br /&gt;
&lt;br /&gt;
Beispielzeile für die php.ini:&lt;br /&gt;
 open_basedir = /home/doms/example.org/subs/&lt;br /&gt;
&lt;br /&gt;
Wenn man mehrere Subdomains hat und diese isolieren möchte, ist dies durch Aufschaltung von lokalen Subdomains auf verschiedene User möglich. (Siehe https://doc.hostsharing.net/users/administration/domain/index.html )&lt;br /&gt;
&lt;br /&gt;
==== Sicherheitskritische Funktionen ====&lt;br /&gt;
&lt;br /&gt;
Weitere Dinge die deaktiviert werden sollten, wenn sie nicht benötigt werden, was im allgemeinen der Fall ist, sind: Das öffnen von URLs als Dateien,&lt;br /&gt;
&lt;br /&gt;
 allow_url_fopen = Off&lt;br /&gt;
&lt;br /&gt;
und die Ausführung von Systembefehlen.&lt;br /&gt;
&lt;br /&gt;
 disable_functions = show_source, system, passthru, shell_exec, exec, phpinfo, popen, proc_open&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  eigene PHP Konfigurationen und verschiedene nebeneinander verwenden ===&lt;br /&gt;
&lt;br /&gt;
Um verschiedene PHP Konfigurationen nebeneinander zu verwenden, kopierst Du den phpstub in ein Unterzeichnis von (fast)cgi(-ssl) und mappst (Einträge in der .htaccess) nach Belieben deine PHP Dateien darauf. &lt;br /&gt;
So können beliebig viele Konfigurationen bei einer Domain nebeneinander genutzt werden.&lt;br /&gt;
&lt;br /&gt;
==== Beispiel muster.example.com ==== &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir ~/doms/example.com/fastcgi/muster&lt;br /&gt;
cp ~/doms/example.com/fastcgi/phpstub ~/doms/example.com/fastcgi/muster/phpstub&lt;br /&gt;
&lt;br /&gt;
und wenn benötigt:&lt;br /&gt;
vi ~/doms/example.com/fastcgi/muster/php.ini&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anschließend muss der Apache Webserver noch angewiesen werden auch diese bestimmte Konfiguration von PHP zu verwenden. Dazu werden der [[.htaccess]] Datei im DocumentRoot der Sub-Domain zwei Zeilen hinzugefügt bzw. eine .htaccess mit den zwei Zeilen angelegt. &lt;br /&gt;
Im Beispiel handelt es sich um die Domain muster.example.com, also:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 cd ~/doms/example.com/subs/muster&lt;br /&gt;
 vi .htaccess&lt;br /&gt;
&lt;br /&gt;
 AddType application/x-httpd-phpfastcgi .php&lt;br /&gt;
 Action application/x-httpd-phpfastcgi /fastcgi-bin/muster/phpstub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Vorinstallierte PHP Version wechseln ==&lt;br /&gt;
Hostsharing bietet neben der aktuellen Standardversion 7.4 auch PHP 7.0, 7.1, 7.2,  7.3 und 8.0, 8.1 an.&lt;br /&gt;
&lt;br /&gt;
Um die Version zu wechseln, genügt es, den jeweiligen phpstub auszutauschen. Version 7.3 liegt unter &amp;lt;code&amp;gt;/usr/local/src/phpstub/phpstub73&amp;lt;/code&amp;gt;; das Versionformat ist entsprechend &amp;lt;code&amp;gt;/usr/local/src/phpstub/phpstubXX&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===phpstub für PHP 8.0 kopieren===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cp /usr/local/src/phpstub/phpstub80 ~/doms/example.com/fastcgi/&lt;br /&gt;
$ cp /usr/local/src/phpstub/phpstub80 ~/doms/example.com/fastcgi-ssl/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===phpstub für PHP 8.0 aktivieren===&lt;br /&gt;
&lt;br /&gt;
Die .htaccess sollte möglichst zentral im Verzeichnisbaum abgelegt werden:&lt;br /&gt;
 ~/doms/example.com/.htaccess&lt;br /&gt;
Damit durch Anwendungs eigene .htaccess Dateien (Wordpress, Nextcloud etc.) nicht unbeabsichtigt die php Einstellungen verloren gehen.&lt;br /&gt;
In der zentralen &amp;lt;code&amp;gt;.htaccess&amp;lt;/code&amp;gt; eines Ordners genügt es, die PHP Dateizuordnung zu überschreiben:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
AddType application/x-httpd-php80 .php&lt;br /&gt;
Action application/x-httpd-php80 /fastcgi-bin/phpstub80&lt;br /&gt;
&lt;br /&gt;
===PHP 8.0 für ssh-Zugang per Shell aktivieren===&lt;br /&gt;
&lt;br /&gt;
Möchte man an der Shell immer /usr/bin/php8.0 statt /usr/bin/php aufrufen, dann kann der Befehl auch in die Datei &amp;quot;~/.profile&amp;quot; ergänzt werden  mit der Zeile: alias php=&#039;/usr/bin/php8.0&#039;&lt;br /&gt;
&lt;br /&gt;
Nach Aktualisierung der Datei &amp;quot;~/.profile&amp;quot; noch $ source ~/.profile eingeben. Dann sollte der Aufruf php -v die version php 8.0 zurückgeben. - Gleiches gilt natürlich auch andere bei HS verfügbare PHP Versionen. &lt;br /&gt;
·&lt;br /&gt;
&lt;br /&gt;
== Eigene PHP Version ==&lt;br /&gt;
Es kann auch eine eigene PHP Version im Paket installiert werden.&lt;br /&gt;
Eine kurz Anleitung ist unter [[Eigene_PHP_Version]] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Eigener PHP FPM Prozess ==&lt;br /&gt;
&lt;br /&gt;
auf einem Managed Server kann jeder Nutzer nach belieben auch php-fpm als eigenen Prozess starten.&lt;br /&gt;
Ein paar Notizen dazu finden sich auf der Seite [[PHP_FPM]].&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Kategorie:HSDoku]]&lt;br /&gt;
[[Kategorie:Installationsanleitungen]]&lt;br /&gt;
[[Kategorie:Software]]&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:WWW]]&lt;/div&gt;</summary>
		<author><name>Chh00</name></author>
	</entry>
	<entry>
		<id>https://wiki.hostsharing.net/index.php?title=PHP&amp;diff=5961</id>
		<title>PHP</title>
		<link rel="alternate" type="text/html" href="https://wiki.hostsharing.net/index.php?title=PHP&amp;diff=5961"/>
		<updated>2022-12-11T12:14:03Z</updated>

		<summary type="html">&lt;p&gt;Chh00: /* Vorinstallierte PHP Version wechseln */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;PHP wird heute bei HS standardmäßig per FastCGI vorkonfiguriert. Dafür wird in jedem Domainverzeichnis unter fastcgi/ eine phpstub Datei angelegt und der Apache Webserver ist konfiguriert .php Dateien über diesen &amp;quot;Stub&amp;quot; mit den Rechten des Users auszuführen.&lt;br /&gt;
&lt;br /&gt;
Zur Wiederherstellung des originalen phpstub ist dieser zentral abgelegt als&lt;br /&gt;
&lt;br /&gt;
  /usr/local/src/phpstub&lt;br /&gt;
&lt;br /&gt;
Anwender, die lediglich PHP-Dateien hochgeladen haben, brauchen ausdrücklich keine eigene php.ini.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Anpassung der PHP Grundkonfiguration === &lt;br /&gt;
&lt;br /&gt;
Um die PHP Konfiguration an eigene Bedürfnisse anzupassen, legt man eine Konfigurationsdatei namens php.ini im fastcgi Verzeichnis der Domain an (für https:// entsprechend im -ssl Verzeichnis) z.B.: /home/pacs/xyz00/users/meinbenutzer/doms/meinedomain.de/fastcgi-ssl/php.ini. In dieser Datei müssen nicht alle Konfigurationsoptionen von PHP definiert sein, sondern nur die, die sich gegenüber der Standard php.ini ändern sollen. Diese liegt in /etc/php/VERSION/cgi und kann dort eingesehen werden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Achtung:&#039;&#039;&#039; Kommentare nicht mit # einleiten (kann zu unerwarteten Fehlkonfigurationen führen), Kommentarzeichen ist das Semikolon &amp;quot;;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Häufig anzupassen sind z.B.:&lt;br /&gt;
&lt;br /&gt;
* die Content-Type charset= Vorgabe für den HTTP Header.&lt;br /&gt;
&lt;br /&gt;
* der maximal verwendbare Hauptspeicher (memory_limit).&lt;br /&gt;
&lt;br /&gt;
* die maximale Größe hochgeladener Dateien (post_max_size).&lt;br /&gt;
&lt;br /&gt;
* die aktiven Extensions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Beispiel einer php.ini: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 ------8&amp;lt; SCHNIPP &amp;gt;8------&lt;br /&gt;
 [..]&lt;br /&gt;
 memory_limit = 128M (default)&lt;br /&gt;
 post_max_size = 8M (default)&lt;br /&gt;
 upload_max_filesize = 2M (default)&lt;br /&gt;
 display_errors = Off (default)&lt;br /&gt;
 log_errors = Off (default)&lt;br /&gt;
 error_log = /home/pacs/xyz00/users/meinbenutzer/doms/meinedomain.de/fastcgi-ssl/php_errors.log&lt;br /&gt;
&lt;br /&gt;
 [..]&lt;br /&gt;
 default_charset = &amp;quot;UTF-8&amp;quot;&lt;br /&gt;
 ; (ist sonst iso-8859-1)&lt;br /&gt;
 ; Der charset kann aber wiederum durch einen Funktionsaufruf&lt;br /&gt;
 ; header(&amp;quot;Content-Type: text/html; charset=iso-8859-1&amp;quot;)&lt;br /&gt;
 ; im PHP-Skript überschrieben werden (sofern output_buffering = On).&lt;br /&gt;
 ------8&amp;lt; SCHNIPP &amp;gt;8------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Beachte:&#039;&#039;&#039; Eine geänderte php.ini Konfiguration wird mit FastCGI erst übernommen, wenn die PHP Prozesse des Users (die über längere Zeit laufen bleiben) neu gestartet werden.&lt;br /&gt;
&lt;br /&gt;
Die Brechstange, mit der das Neustarten der PHP Prozesse erzwungen werden kann, ist diese zu killen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
killall -u $USER -r php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
$USER = ist der aktuell angemeldeten Benutzer und muss nicht durch den Benutzernamen (xyz00 oder xyz00-user) ersetzt werden. Nur die Prozesse des angemeldeten Users $USER werden gelöscht. &amp;quot;-r&amp;quot; bewirkt, dass der Ausdruck &amp;quot;php&amp;quot; als regulärer Ausdruck interpretiert wird. Intern heißen die sichtbaren Prozesse nicht &amp;quot;php&amp;quot; sondern beispielsweise &amp;quot;php7.2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== PHP Sicherheit ===&lt;br /&gt;
&lt;br /&gt;
==== open_basedir ====&lt;br /&gt;
&lt;br /&gt;
Sofern der PHP Parameter open_basdir nicht gesetzt ist (Vorgabe) können (kompromittierte) php Skripte an alle Dateien des Users kommen, ohne einen extra Shellzugang installieren zu müssen und dadurch entdeckt zu werden.&lt;br /&gt;
&lt;br /&gt;
Die Passwortabfrage von Hsadmin bringt eine Abhilfe für die zentralen Dienste. (Sofern Du dein Passwort nicht in eine Datei schreibst und die Abfrage so wieder ausschaltest, wovon besser abzusehen ist.) Doch alle Daten auf die Du als Benutzer zugreifen kannst sind prinzipiell den PHP-Skripten ausgeliefert.&lt;br /&gt;
&lt;br /&gt;
Mit open_basedir wird festgelegt in welchen Verzeichnissen PHP Skripte lesen und schreiben dürfen. Geprüft wird dabei ob der zu öffnende Pfad mit dem angegebene Pfad beginnt. Es ist daher wichtig ob sich am Ende ein &amp;quot;/&amp;quot; befindet oder nicht. Ein open_basedir von /home/doms/example.org/subs/www (ohne /) erlaubt somit z.B. auch Zugriffe auf die Subdomain www2 etc.&lt;br /&gt;
&lt;br /&gt;
Beispielzeile für die php.ini:&lt;br /&gt;
 open_basedir = /home/doms/example.org/subs/&lt;br /&gt;
&lt;br /&gt;
Wenn man mehrere Subdomains hat und diese isolieren möchte, ist dies durch Aufschaltung von lokalen Subdomains auf verschiedene User möglich. (Siehe https://doc.hostsharing.net/users/administration/domain/index.html )&lt;br /&gt;
&lt;br /&gt;
==== Sicherheitskritische Funktionen ====&lt;br /&gt;
&lt;br /&gt;
Weitere Dinge die deaktiviert werden sollten, wenn sie nicht benötigt werden, was im allgemeinen der Fall ist, sind: Das öffnen von URLs als Dateien,&lt;br /&gt;
&lt;br /&gt;
 allow_url_fopen = Off&lt;br /&gt;
&lt;br /&gt;
und die Ausführung von Systembefehlen.&lt;br /&gt;
&lt;br /&gt;
 disable_functions = show_source, system, passthru, shell_exec, exec, phpinfo, popen, proc_open&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===  eigene PHP Konfigurationen und verschiedene nebeneinander verwenden ===&lt;br /&gt;
&lt;br /&gt;
Um verschiedene PHP Konfigurationen nebeneinander zu verwenden, kopierst Du den phpstub in ein Unterzeichnis von (fast)cgi(-ssl) und mappst (Einträge in der .htaccess) nach Belieben deine PHP Dateien darauf. &lt;br /&gt;
So können beliebig viele Konfigurationen bei einer Domain nebeneinander genutzt werden.&lt;br /&gt;
&lt;br /&gt;
==== Beispiel muster.example.com ==== &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir ~/doms/example.com/fastcgi/muster&lt;br /&gt;
cp ~/doms/example.com/fastcgi/phpstub ~/doms/example.com/fastcgi/muster/phpstub&lt;br /&gt;
&lt;br /&gt;
und wenn benötigt:&lt;br /&gt;
vi ~/doms/example.com/fastcgi/muster/php.ini&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anschließend muss der Apache Webserver noch angewiesen werden auch diese bestimmte Konfiguration von PHP zu verwenden. Dazu werden der [[.htaccess]] Datei im DocumentRoot der Sub-Domain zwei Zeilen hinzugefügt bzw. eine .htaccess mit den zwei Zeilen angelegt. &lt;br /&gt;
Im Beispiel handelt es sich um die Domain muster.example.com, also:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 cd ~/doms/example.com/subs/muster&lt;br /&gt;
 vi .htaccess&lt;br /&gt;
&lt;br /&gt;
 AddType application/x-httpd-phpfastcgi .php&lt;br /&gt;
 Action application/x-httpd-phpfastcgi /fastcgi-bin/muster/phpstub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Vorinstallierte PHP Version wechseln ==&lt;br /&gt;
Hostsharing bietet neben der aktuellen Standardversion 7.4 auch PHP 7.0, 7.1, 7.2,  7.3 und 8.0, 8.1 an.&lt;br /&gt;
&lt;br /&gt;
Um die Version zu wechseln, genügt es, den jeweiligen phpstub auszutauschen. Version 7.3 liegt unter &amp;lt;code&amp;gt;/usr/local/src/phpstub/phpstub73&amp;lt;/code&amp;gt;; das Versionformat ist entsprechend &amp;lt;code&amp;gt;/usr/local/src/phpstub/phpstubXX&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===phpstub für PHP 8.0 kopieren===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cp /usr/local/src/phpstub/phpstub80 ~/doms/example.com/fastcgi/&lt;br /&gt;
$ cp /usr/local/src/phpstub/phpstub80 ~/doms/example.com/fastcgi-ssl/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===phpstub für PHP 8.0 aktivieren===&lt;br /&gt;
&lt;br /&gt;
Die .htaccess sollte möglichst zentral im Verzeichnisbaum abgelegt werden:&lt;br /&gt;
 ~/doms/example.com/.htaccess&lt;br /&gt;
Damit durch Anwendungs eigene .htaccess Dateien (Wordpress, Nextcloud etc.) nicht unbeabsichtigt die php Einstellungen verloren gehen.&lt;br /&gt;
In der zentralen &amp;lt;code&amp;gt;.htaccess&amp;lt;/code&amp;gt; eines Ordners genügt es, die PHP Dateizuordnung zu überschreiben:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
AddType application/x-httpd-php80 .php&lt;br /&gt;
Action application/x-httpd-php80 /fastcgi-bin/phpstub80&lt;br /&gt;
·&lt;br /&gt;
&lt;br /&gt;
== Eigene PHP Version ==&lt;br /&gt;
Es kann auch eine eigene PHP Version im Paket installiert werden.&lt;br /&gt;
Eine kurz Anleitung ist unter [[Eigene_PHP_Version]] beschrieben.&lt;br /&gt;
&lt;br /&gt;
== Eigener PHP FPM Prozess ==&lt;br /&gt;
&lt;br /&gt;
auf einem Managed Server kann jeder Nutzer nach belieben auch php-fpm als eigenen Prozess starten.&lt;br /&gt;
Ein paar Notizen dazu finden sich auf der Seite [[PHP_FPM]].&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Kategorie:HSDoku]]&lt;br /&gt;
[[Kategorie:Installationsanleitungen]]&lt;br /&gt;
[[Kategorie:Software]]&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:WWW]]&lt;/div&gt;</summary>
		<author><name>Chh00</name></author>
	</entry>
	<entry>
		<id>https://wiki.hostsharing.net/index.php?title=Shell&amp;diff=5960</id>
		<title>Shell</title>
		<link rel="alternate" type="text/html" href="https://wiki.hostsharing.net/index.php?title=Shell&amp;diff=5960"/>
		<updated>2022-12-11T11:44:53Z</updated>

		<summary type="html">&lt;p&gt;Chh00: /* Aliasse in der Standardinstallation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Die &#039;&#039;&#039;Unix-Shell&#039;&#039;&#039; oder kurz &#039;&#039;&#039;Shell&#039;&#039;&#039; (en. Hülle, Schale) bezeichnet die traditionelle Benutzerschnittstelle unter Unix oder unixoiden Betriebssystemen. Der Benutzer kann sich auf einem Computer per [[Login mit SSH | SSH einloggen]] und befindet sich dann auf der Shell. Hier kann er in einer Eingabezeile Kommandos eintippen, die der Computer dann sogleich ausführt. Man spricht darum auch von einem Kommandozeileninterpreter.&lt;br /&gt;
&lt;br /&gt;
In der Regel hat der Benutzer unter Unix die Wahl zwischen verschiedenen Shells. Vom Sprachumfang her sind alle üblichen Unix-Shells als vollwertige Skriptsprachen zur Programmierung und zur Automatisierung von Aufgaben verwendbar; die Abgrenzung zu reinen Skriptsprachen (z. B. Perl, awk) besteht darin, dass Shells besondere Mittel für den interaktiven Dialog mit dem Anwender bereitstellen, die vom Ausgeben eines Prompts im einfachsten Fall bis hin zur Möglichkeit des Editierens der eingegebenen Befehle oder zur Jobsteuerung reichen.&lt;br /&gt;
&lt;br /&gt;
Bei Hostsharing hast Du neben dem [[hsadmin]]-Webclient die Möglichkeit, alle notwendigen Konfigurationen von hier aus zu erledigen. Dazu kannst Du Skripte schreiben, die zusammen mit [[cron | Cronjobs]] diverse Dinge (zum Beispiel tägliche Statistiken, Reaktionen auf Vorfälle) für dich automatisiert erledigen.&lt;br /&gt;
&lt;br /&gt;
== Aliasse in der Standardinstallation ==&lt;br /&gt;
&lt;br /&gt;
Ein &#039;&#039;&#039;alias&#039;&#039;&#039; ist im einfachsten Fall eine selbst-definierte Abkürzung für einen Befehl. Sie erlaubt es der Nutzerin statt eines langen Befehles (z.B. &#039;&#039;&#039;ls --all --human-readable -l&#039;&#039;&#039; bzw. &#039;&#039;&#039;ls -lha&#039;&#039;&#039;) nur eine Kurzform zu tippen (z.B. &#039;&#039;&#039;ll&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
In der Standard-Installation sind noch keine Aliase definiert.&lt;br /&gt;
&lt;br /&gt;
Die (bash-) Shell liest aber beim login automatisch die Datei &#039;&#039;&#039;~/.profile&#039;&#039;&#039;. Dort lassen sich entsprechend aliasse angeben. Die Datei muss ggfs. erst angelegt werden.&lt;br /&gt;
&lt;br /&gt;
Das obige Beispiel sähe so aus (Datei-Inhalt von ~/.profile):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;alias ll=&#039;ls -lha&#039;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HSDoku]]&lt;br /&gt;
[[Kategorie:Glossar]]&lt;/div&gt;</summary>
		<author><name>Chh00</name></author>
	</entry>
	<entry>
		<id>https://wiki.hostsharing.net/index.php?title=Drupal_installieren&amp;diff=4455</id>
		<title>Drupal installieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.hostsharing.net/index.php?title=Drupal_installieren&amp;diff=4455"/>
		<updated>2017-08-08T17:01:25Z</updated>

		<summary type="html">&lt;p&gt;Chh00: /* Drupal template default für HS konfigurieren */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Drupal bei HS =&lt;br /&gt;
&lt;br /&gt;
== Vorbereitungen ==&lt;br /&gt;
&lt;br /&gt;
In &#039;&#039;hsadmin&#039;&#039;, zum Beispiel mit &#039;&#039;hsscript&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;hsadmin&#039;&#039;-Shell starten mit:&lt;br /&gt;
&lt;br /&gt;
  hsscript -u xyz00 -i&lt;br /&gt;
  Password: ********&lt;br /&gt;
&lt;br /&gt;
Dann nacheinander anlegen:&lt;br /&gt;
&lt;br /&gt;
* Linux User als Domain-Administrator&lt;br /&gt;
* Subdomain &#039;&#039;drupal.hs-example.de&#039;&#039;&lt;br /&gt;
* MySQL-User &lt;br /&gt;
* MySQL Datenbank&lt;br /&gt;
&lt;br /&gt;
  xyz00@hsadmin&amp;gt; user.add({set:{name:&#039;xyz00-drupal&#039;,password:&#039;geheim&#039;,comment:&#039;Drupal CMS&#039;}})&lt;br /&gt;
  xyz00@hsadmin&amp;gt; domain.add({set:{name:&#039;drupal.hs-example.de&#039;,user:&#039;xyz00-drupal&#039;}})&lt;br /&gt;
  xyz00@hsadmin&amp;gt; mysqluser.add({set:{name:&#039;xyz00_drupaluser&#039;,password:&#039;geheim&#039;}})&lt;br /&gt;
  xyz00@hsadmin&amp;gt; mysqldb.add({set:{name:&#039;xyz00_drupaldb&#039;,owner:&#039;xyz00_drupaluser&#039;}})&lt;br /&gt;
&lt;br /&gt;
== Drupal installieren ==&lt;br /&gt;
&lt;br /&gt;
Anmelden als Linux-User &#039;&#039;xyz00-drupal&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
  ssh -l xyz00-drupal xyz00.hostsharing.net&lt;br /&gt;
&lt;br /&gt;
Und dann Drupal herunterladen und in den Webspace entpacken:&lt;br /&gt;
&lt;br /&gt;
  cd doms/drupal.hs-example.de/htdocs&lt;br /&gt;
  wget -O - https://ftp.drupal.org/files/projects/drupal-8.3.6.tar.gz |tar -xz --strip 1&lt;br /&gt;
&lt;br /&gt;
== Drupal für HS anpassen ==&lt;br /&gt;
&lt;br /&gt;
doms/drupal.hs-example.de/htdocs&lt;br /&gt;
&lt;br /&gt;
  vi .htaccess&lt;br /&gt;
&lt;br /&gt;
  # If your site is running in a VirtualDocumentRoot at http://example.com/,&lt;br /&gt;
  # uncomment the following line:&lt;br /&gt;
  # RewriteBase /&lt;br /&gt;
&lt;br /&gt;
wird zu&lt;br /&gt;
&lt;br /&gt;
  # If your site is running in a VirtualDocumentRoot at http://example.com/,&lt;br /&gt;
  # uncomment the following line:&lt;br /&gt;
  RewriteBase /&lt;br /&gt;
&lt;br /&gt;
== Drupal konfigurieren ==&lt;br /&gt;
&lt;br /&gt;
Im Browser auf die Seite &lt;br /&gt;
http://drupal.hs-example.de gehen und den Anweisungen folgen.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Drupal1.jpg]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Drupal2.jpg]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Drupal3.jpg]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Drupal4.jpg]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Drupal5.jpg]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Drupal6.jpg]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Drupal7.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Drupal template default für HS konfigurieren ==&lt;br /&gt;
&lt;br /&gt;
  cd sites/default/files/php/twig&lt;br /&gt;
  chmod 644 .htaccess&lt;br /&gt;
  edit .htaccess&lt;br /&gt;
&lt;br /&gt;
In der Zeile 11 den Eintrag &amp;quot;-ExecCGI&amp;quot; und  &amp;quot;-Includes&amp;quot; löschen, mit diesem Ergebnis:&lt;br /&gt;
&lt;br /&gt;
  Options -Indexes -MultiViews&lt;br /&gt;
&lt;br /&gt;
und dann noch eine .htaccess &lt;br /&gt;
&lt;br /&gt;
  cd ../..&lt;br /&gt;
&lt;br /&gt;
  chmod 644 .htaccess&lt;br /&gt;
  edit .htaccess&lt;br /&gt;
&lt;br /&gt;
In der Zeile 2 den Eintrag &amp;quot;-ExecCGI&amp;quot; und  &amp;quot;-Includes&amp;quot; löschen, mit diesem Ergebnis:&lt;br /&gt;
&lt;br /&gt;
  Options -Indexes -MultiViews&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Danach die Seite im Browser neu laden.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Kategorie:HSDoku]]&lt;br /&gt;
[[Kategorie:Installationsanleitungen]]&lt;br /&gt;
[[Kategorie:Software]]&lt;br /&gt;
[[Kategorie:Blog]]&lt;br /&gt;
[[Kategorie:CMS]]&lt;/div&gt;</summary>
		<author><name>Chh00</name></author>
	</entry>
</feed>