<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wikimirror.piraten.tools/wiki/index.php?action=history&amp;feed=atom&amp;title=Benutzer%3ADefel%2Fnginxtut</id>
	<title>Benutzer:Defel/nginxtut - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wikimirror.piraten.tools/wiki/index.php?action=history&amp;feed=atom&amp;title=Benutzer%3ADefel%2Fnginxtut"/>
	<link rel="alternate" type="text/html" href="https://wikimirror.piraten.tools/wiki/index.php?title=Benutzer:Defel/nginxtut&amp;action=history"/>
	<updated>2026-05-07T22:30:51Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Piratenwiki Mirror</subtitle>
	<generator>MediaWiki 1.35.14</generator>
	<entry>
		<id>https://wikimirror.piraten.tools/wiki/index.php?title=Benutzer:Defel/nginxtut&amp;diff=55797026&amp;oldid=prev</id>
		<title>imported&gt;Defel: Die Seite wurde neu angelegt: „&lt;div id=&quot;change-144&quot; class=&quot;journal has-notes&quot;&gt;     &lt;h4&gt;&lt;div class=&quot;journal-link&quot;&gt;&lt;/div&gt;      &lt;div class=&quot;wiki&quot; id=&quot;journal-144-notes&quot;&gt;&lt;/div&gt; &lt;h1&gt;Ausgangssystem&lt;/…“</title>
		<link rel="alternate" type="text/html" href="https://wikimirror.piraten.tools/wiki/index.php?title=Benutzer:Defel/nginxtut&amp;diff=55797026&amp;oldid=prev"/>
		<updated>2011-12-08T04:20:07Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „&amp;lt;div id=&amp;quot;change-144&amp;quot; class=&amp;quot;journal has-notes&amp;quot;&amp;gt;     &amp;lt;h4&amp;gt;&amp;lt;div class=&amp;quot;journal-link&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;      &amp;lt;div class=&amp;quot;wiki&amp;quot; id=&amp;quot;journal-144-notes&amp;quot;&amp;gt;&amp;lt;/div&amp;gt; &amp;lt;h1&amp;gt;Ausgangssystem&amp;lt;/…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;div id=&amp;quot;change-144&amp;quot; class=&amp;quot;journal has-notes&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;h4&amp;gt;&amp;lt;div class=&amp;quot;journal-link&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;div class=&amp;quot;wiki&amp;quot; id=&amp;quot;journal-144-notes&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;h1&amp;gt;Ausgangssystem&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;ul&amp;gt;&lt;br /&gt;
	&amp;lt;li&amp;gt;virtualisiertes Gast-System innerhalb KVM&amp;lt;/li&amp;gt;&lt;br /&gt;
		&amp;lt;li&amp;gt;mem: 768MB&amp;lt;/li&amp;gt;&lt;br /&gt;
		&amp;lt;li&amp;gt;Debian squeeze&amp;lt;/li&amp;gt;&lt;br /&gt;
	&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h1&amp;gt;Anforderung&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;ul&amp;gt;&lt;br /&gt;
	&amp;lt;li&amp;gt;Multiuser, es sollen mind. 2 unterschiedliche User laufen&amp;lt;/li&amp;gt;&lt;br /&gt;
		&amp;lt;li&amp;gt;chroot&amp;lt;/li&amp;gt;&lt;br /&gt;
	&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h1&amp;gt;Installationsanleitung&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;aptitude install nginx libxml2 gcc make&lt;br /&gt;
cd ~&lt;br /&gt;
mkdir src &amp;amp;amp;&amp;amp;amp; cd src&lt;br /&gt;
wget http://downloads.php.net/stas/php-5.4.0RC2.tar.gz&lt;br /&gt;
tar xzvf php-5.4.0RC2.tar.gz&lt;br /&gt;
cd php-5.4.0RC2&lt;br /&gt;
./configure --enable-fpm&lt;br /&gt;
make &amp;amp;amp;&amp;amp;amp; make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Damit sollten alle notwendigen Pakete installiert sein.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h1&amp;gt;Konfiguration&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;multi-user + chroot vorbereitung&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Für das multi-user Feature brauchen wir mehrere User, klar, shell und homedir brauchen die nicht. Aber beide kommen in die www-data group.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;useradd -g www-data -d /dev/null www1&lt;br /&gt;
useradd -g www-data -d /dev/null www2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Und es werden die htdocs-Ordner für beide User angelegt.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;mkdir /var/www/www1&lt;br /&gt;
chown www1:www-data /var/www/www1&lt;br /&gt;
mkdir /var/www/www2&lt;br /&gt;
chown www2:www-data /var/www/www1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Lässt sich natürlich auf eine beliebige Zahl von Usern erweitern.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;nginx&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
www-root ist &lt;br /&gt;
	&amp;lt;ul&amp;gt;&lt;br /&gt;
	&amp;lt;li&amp;gt;/var/www&amp;lt;/li&amp;gt;&lt;br /&gt;
	&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Unterhalb dieses Ordners bekommt jeder User sein Homedir&lt;br /&gt;
	&amp;lt;ul&amp;gt;&lt;br /&gt;
	&amp;lt;li&amp;gt;/var/www/www1&amp;lt;/li&amp;gt;&lt;br /&gt;
		&amp;lt;li&amp;gt;/var/www/www2&amp;lt;/li&amp;gt;&lt;br /&gt;
		&amp;lt;li&amp;gt;...&amp;lt;/li&amp;gt;&lt;br /&gt;
	&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Wir binden user1.php auf einen php-fpm pool von www1, das gleiche analog für www2.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;/etc/nginx/sites-enabled/default&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;pre&amp;gt;server {&lt;br /&gt;
&lt;br /&gt;
        listen   80; ## listen for ipv4&lt;br /&gt;
        listen   [::]:80 default ipv6only=on; ## listen for ipv6&lt;br /&gt;
&lt;br /&gt;
        server_name  localhost;&lt;br /&gt;
&lt;br /&gt;
        access_log  /var/log/nginx/localhost.access.log;&lt;br /&gt;
&lt;br /&gt;
        location / {&lt;br /&gt;
                root   /var/www;&lt;br /&gt;
                index  index.html index.htm;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        location ~ ^/user1.php&lt;br /&gt;
        {&lt;br /&gt;
                fastcgi_pass 127.0.0.1:9001;&lt;br /&gt;
                fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;&lt;br /&gt;
                fastcgi_param PATH_INFO $fastcgi_script_name;&lt;br /&gt;
                include /etc/nginx/fastcgi_params;&lt;br /&gt;
        }&lt;br /&gt;
        location ~ ^/user2.php&lt;br /&gt;
        {&lt;br /&gt;
                fastcgi_pass 127.0.0.1:9002;&lt;br /&gt;
                fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;&lt;br /&gt;
                fastcgi_param PATH_INFO $fastcgi_script_name;&lt;br /&gt;
                include /etc/nginx/fastcgi_params;&lt;br /&gt;
        }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;p&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;php-fpm&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Die php-fpm config ist in php5.4 eine .ini und keine .xml Datei, wie im Tutorial beschrieben.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;[www1]&lt;br /&gt;
user = www1&lt;br /&gt;
group = www-data&lt;br /&gt;
listen = 127.0.0.1:9001&lt;br /&gt;
pm = dynamic&lt;br /&gt;
pm.max_children = 5&lt;br /&gt;
pm.start_servers = 2&lt;br /&gt;
pm.min_spare_servers = 1&lt;br /&gt;
pm.max_spare_servers = 3&lt;br /&gt;
chroot = /var/www/www1&lt;br /&gt;
&lt;br /&gt;
[www2]&lt;br /&gt;
user = www2&lt;br /&gt;
group = www-data&lt;br /&gt;
listen = 127.0.0.1:9002&lt;br /&gt;
pm = dynamic&lt;br /&gt;
pm.max_children = 5&lt;br /&gt;
pm.start_servers = 2&lt;br /&gt;
pm.min_spare_servers = 1&lt;br /&gt;
pm.max_spare_servers = 3&lt;br /&gt;
chroot = /var/www/www2&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;Testskript&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Ein kleines Testskript, welches pwd, Ordnerinhalt und Benutzer anzeigt. &amp;lt;br&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;pre&amp;gt;&amp;amp;lt;h1&amp;amp;gt;User&amp;amp;lt;/h1&amp;amp;gt;&lt;br /&gt;
&amp;amp;lt;?php&lt;br /&gt;
echo $_SERVER['USER'];  &lt;br /&gt;
?&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;lt;h1&amp;amp;gt;Dir&amp;amp;lt;/h1&amp;amp;gt;&lt;br /&gt;
&amp;amp;lt;ul&amp;amp;gt;&lt;br /&gt;
&amp;amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$d = dir('.');&lt;br /&gt;
while( false !== ($h = $d-&amp;amp;gt;read())) {&lt;br /&gt;
        echo '&amp;amp;lt;li&amp;amp;gt;' . $h . '&amp;amp;lt;/li&amp;amp;gt;';  &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
?&amp;amp;gt;&lt;br /&gt;
&amp;amp;lt;/ul&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;lt;h1&amp;amp;gt;realpath&amp;amp;lt;/h1&amp;amp;gt;&lt;br /&gt;
&amp;amp;lt;?php&lt;br /&gt;
echo realpath('.');&lt;br /&gt;
?&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;p&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Dieses Skript nach /var/www/www1/user1.php und /var/www/www2/user2.php kopieren.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;run it&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Ok, jetzt das ganze zum Laufen bekommen: &amp;lt;br&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;pre&amp;gt;/usr/local/sbin/php-fpm&lt;br /&gt;
/etc/init.d/nginx restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;p&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Überprüfen ob php-fpm läuft: &amp;lt;br&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;pre&amp;gt;# netstat -nap | grep php-fpm&lt;br /&gt;
tcp        0      0 127.0.0.1:9001          0.0.0.0:*               LISTEN      29835/php-fpm.conf)&lt;br /&gt;
tcp        0      0 127.0.0.1:9002          0.0.0.0:*               LISTEN      29835/php-fpm.conf)&lt;br /&gt;
unix  3      [ ]         STREAM     CONNECTED     229990   29835/php-fpm.conf) &lt;br /&gt;
unix  3      [ ]         STREAM     CONNECTED     229989   29835/php-fpm.conf) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;p&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h1&amp;gt;Test&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Im Browser öffnen: http://nginx/user1.php&amp;lt;br&amp;gt;Ausgabe: &amp;lt;br&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;pre&amp;gt;User&lt;br /&gt;
www1&lt;br /&gt;
&lt;br /&gt;
Dir&lt;br /&gt;
.&lt;br /&gt;
..&lt;br /&gt;
user1.php&lt;br /&gt;
&lt;br /&gt;
realpath&lt;br /&gt;
/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;p&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Im Browser öffnen: http://nginx/user2.php&amp;lt;br&amp;gt;Ausgabe: &amp;lt;br&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;pre&amp;gt;User&lt;br /&gt;
www2&lt;br /&gt;
&lt;br /&gt;
Dir&lt;br /&gt;
.&lt;br /&gt;
..&lt;br /&gt;
user2.php&lt;br /&gt;
&lt;br /&gt;
realpath&lt;br /&gt;
/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;p&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;p&amp;gt;Jay!&amp;lt;/p&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>imported&gt;Defel</name></author>
	</entry>
</feed>