ISPConfig 3 auf Debian Wheezy

#1
Hallo,
ich habe mir die Tage auf meinem virtuellen Server ISPConfig installiert. Das Betriebssystem ist Debian Wheezy.
Nach einiger Zeit und nach dpkg-configure postfix habe ich nun den Mail Server ans laufen bekommen. Ich habe allerdings noch Probleme mit dem Apache. Wenn ich Änderungen an den vhosts mache im Webinterface (ISPConfig 3) z.B. das DocumentRoot Verzeichnis ändern möchte. Übernimmt er das nicht in der vhost Datei. Er aktualisiert also den Apache Webserver nicht.

Kann mir da jemand helfen? Ich habe keinen vergleichbaren Thread hier im Forum gefunden.


Vielen Dank für Eure Hilfe.
 

Till

Administrator
#6
Ich würde ja einfach den Inhalt des Verzeichnisses "foomla" direkt nach web kopieren, das docroot sollte man nie ändern. Wenn Du private Daten hast die nicht ins eb root sollen dann gehören die nach private.

wenn Du wirklich das docroot ändern willst Und Dir bewusst ist dass Dinge wie Statistiken dann nicht mehr gehen werden dann kannst Du eine eigene DocumentRoot Direktive in das apache Direktiven Feld welche den vollen Pfad zu website enthält einfügen.
 
#11
Gut, jetzt habe ich die Registerkarte Optionen mit PHP open_basedir etc.
{DOCROOT} /var/www/edv-jellissen.de/web/joomla/
Ist das so richtig?

1. Soll das heißen das meine Kunden nicht selbständig das Document Root Verzeichnis ändern dürfen?
2. Wie ich das mit Subdomains, wo werden die umgeleitet?
3. Wofür ist denn dann bitte die Einstellung unter der Registerkarte "Umleitung" --> Weiterleitungspfad usw.
Das ist doch dann sinnfrei oder?



Danke für die Antwort.
 

Till

Administrator
#12
Gut, jetzt habe ich die Registerkarte Optionen mit PHP open_basedir etc.
{DOCROOT} /var/www/edv-jellissen.de/web/joomla/
Ist das so richtig?
Nein, siehe apache Doku zum Theme document root. apache kennt keine Platzhalter a la {DOCROOT}. Ein apache Document root wird durch die Direktive "DocumentRoot definiert, also so:

DocumentRoot /var/www/edv-jellissen.de/web/joomla

Wie schon im vorigen post gesagt ist das eine blöde idee und unnötig. Aber du scheinst es ja auf die harte tour selbst lernen zu wollen.

1. Soll das heißen das meine Kunden nicht selbständig das Document Root Verzeichnis ändern dürfen?
Richtg, denn sonst könnte Kunde a mal schnell das docroot seiner seite auf das des Kunden b legen, sich aus dessem shop die kreditkartendaten runter laden und einen schönen Urlaub in der karibik machen oder er legt es mal auf das ispconfig verzeichnis und übernimmt Deinen server und sperrt dich aus ;)

2. Wie ich das mit Subdomains, wo werden die umgeleitet?
Reiterkarte umleitung. Das docroot hat aber mit umleitungen nichts zu tun, dennn das docroot definiert das basisverzeichnis des vhost und eine umleitung ist eine funktion des apache zum umschreiben von URL's ( siehe rewriting im apache handbuch).

Und wenn eine subdomain ein eigenes verzeichnis haben soll weil dort andere software installiert ist als ind er hauptdomain dann legt man sie als eigene website an, so wie es im handbuch steht. denn kann kann ispconfig dafür sorgen dass deren inhalte sauber von der hauptdomain getrennt sind und die scripte unter einem anderen user laufen.

3. Wofür ist denn dann bitte die Einstellung unter der Registerkarte "Umleitung" --> Weiterleitungspfad usw.
Das ist doch dann sinnfrei oder?
Eine Umleitung ist eine Umleitung und wird auf dem Reiter Umleitung definiert. Dass das docroot keine umleitung ist habe ich oben ja schon geschrieben, ich empfehle da mal die apache doku für Grundlagen was umleitungen (rewrites) sind und wie sie funktionieren.
 
#13
Hallo. Danke erstmal. Natürlich weiß ich das Apache keine Variablen wie {DOCROOT} kennt. ISPConfig hat mir das aber angeboten die Variable zu verwenden. Wie auch immer. Ich habe jetzt DocumentRoot ausgeschrieben und das gewünschte Verzeichnis direkt dahinter(wie es auch in der .vhost Datei stehen muss. Er übernimmt die Einstellungen nicht.
 

Till

Administrator
#15
Die Einstellung wird dann nicht pbernommen wenn apache mit der neuen config nicht gestartet ist, Du erhältst dann eine .err Datei im sites-available Verzeichnis mit der fehlerhaften config.
 
#16
So, jetzt sieht meine .vhost Datei so aus das es zwei Einträge DocumentRoot gibt.
Einmal ziemlich weit oben in <VirtualHost> mit dem falschen Eintrag und einmal vor dem Ende der Datei (vor </VirtualHost>)
Er nimmt natürlich den ersten (falschen) Eintrag DocumentRoot. :-( :-( :-( Was mache ich falsch?

Ich bin nach der Anleitung bei der Installation vorgegangen. https://www.howtoforge.com/perfect-server-debian-wheezy-apache2-bind-dovecot-ispconfig-3
 
#20
Leider nicht. Die v.host Datei sieht bei mir so aus
Code:
<Directory /var/www/edv-jellissen.de>
        AllowOverride None
                Order Deny,Allow
        Deny from all
        </Directory>

<VirtualHost *:80>
                    DocumentRoot /var/www/edv-jellissen.de/web
          
        ServerName edv-jellissen.de
        ServerAlias www.edv-jellissen.de
    ServerAlias wiki.edv-jellissen.de
        ServerAdmin webmaster@edv-jellissen.de

        ErrorLog /var/log/ispconfig/httpd/edv-jellissen.de/error.log

        Alias /error/ "/var/www/edv-jellissen.de/web/error/"
        ErrorDocument 400 /error/400.html
        ErrorDocument 401 /error/401.html
        ErrorDocument 403 /error/403.html
        ErrorDocument 404 /error/404.html
        ErrorDocument 405 /error/405.html
        ErrorDocument 500 /error/500.html
        ErrorDocument 502 /error/502.html
        ErrorDocument 503 /error/503.html

        <IfModule mod_ssl.c>
        </IfModule>

        <Directory /var/www/edv-jellissen.de/web>
                # Clear PHP settings of this website
                <FilesMatch ".+\.ph(p[345]?|t|tml)$">
                        SetHandler None
                </FilesMatch>
                Options +FollowSymLinks
                AllowOverride All
                                Order allow,deny
                Allow from all
              
                # ssi enabled
                AddType text/html .shtml
                AddOutputFilter INCLUDES .shtml
                Options +Includes
        </Directory>
        <Directory /var/www/clients/client1/web1/web>
                # Clear PHP settings of this website
                <FilesMatch ".+\.ph(p[345]?|t|tml)$">
                        SetHandler None
                </FilesMatch>
                Options +FollowSymLinks
                AllowOverride All
                                Order allow,deny
                Allow from all
              
                # ssi enabled
                AddType text/html .shtml
                AddOutputFilter INCLUDES .shtml
                Options +Includes
        </Directory>

        <IfModule mod_ruby.c>
            <Directory /var/www/edv-jellissen.de/web>
                Options +ExecCGI
            </Directory>
            RubyRequire apache/ruby-run
            #RubySafeLevel 0
            AddType text/html .rb
            AddType text/html .rbx
            <Files *.rb>
                SetHandler ruby-object
                RubyHandler Apache::RubyRun.instance
            </Files>
            <Files *.rbx>
                SetHandler ruby-object
                RubyHandler Apache::RubyRun.instance
            </Files>
        </IfModule>

        <IfModule mod_perl.c>
            PerlModule ModPerl::Registry
            PerlModule Apache2::Reload
            <Directory /var/www/edv-jellissen.de/web>
                PerlResponseHandler ModPerl::Registry
                PerlOptions +ParseHeaders
                Options +ExecCGI
            </Directory>
            <Directory /var/www/clients/client1/web1/web>
                PerlResponseHandler ModPerl::Registry
                PerlOptions +ParseHeaders
                Options +ExecCGI
            </Directory>
            <Files *.pl>
                SetHandler perl-script
            </Files>
        </IfModule>

        <IfModule mod_python.c>
            <Directory /var/www/edv-jellissen.de/web>
                <FilesMatch "\.py$">
                    SetHandler mod_python
                </FilesMatch>
                PythonHandler mod_python.publisher
                PythonDebug On
            </Directory>
        </IfModule>

        # cgi enabled
    <Directory /var/www/clients/client1/web1/cgi-bin>
                        Order allow,deny
            Allow from all
                    </Directory>
        ScriptAlias  /cgi-bin/ /var/www/clients/client1/web1/cgi-bin/
        <FilesMatch "\.(cgi|pl)$">
            SetHandler cgi-script
        </FilesMatch>
        # suexec enabled
        <IfModule mod_suexec.c>
            SuexecUserGroup web1 client1
        </IfModule>
        # php as fast-cgi enabled
    # For config options see: http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html
        <IfModule mod_fcgid.c>
                IdleTimeout 300
                ProcessLifeTime 3600
                # MaxProcessCount 1000
                DefaultMinClassProcessCount 0
                DefaultMaxClassProcessCount 100
                IPCConnectTimeout 3
                IPCCommTimeout 600
                BusyTimeout 3600
        </IfModule>
        <Directory /var/www/edv-jellissen.de/web>
                <FilesMatch "\.php[345]?$">
                    SetHandler fcgid-script
                </FilesMatch>
                FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php
                FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php3
                FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php4
                FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php5
                Options +ExecCGI
                AllowOverride All
                                Order allow,deny
                Allow from all
                        </Directory>
        <Directory /var/www/clients/client1/web1/web>
                <FilesMatch "\.php[345]?$">
                    SetHandler fcgid-script
                </FilesMatch>
                FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php
                FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php3
                FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php4
                FCGIWrapper /var/www/php-fcgi-scripts/web1/.php-fcgi-starter .php5
                Options +ExecCGI
                AllowOverride All
                                Order allow,deny
                Allow from all
                        </Directory>


        # add support for apache mpm_itk
        <IfModule mpm_itk_module>
            AssignUserId web1 client1
        </IfModule>

        <IfModule mod_dav_fs.c>
        # Do not execute PHP files in webdav directory
            <Directory /var/www/clients/client1/web1/webdav>
                <ifModule mod_security2.c>
                    SecRuleRemoveById 960015
                    SecRuleRemoveById 960032
                </ifModule>
                <FilesMatch "\.ph(p3?|tml)$">
                    SetHandler None
                </FilesMatch>
            </Directory>
            DavLockDB /var/www/clients/client1/web1/tmp/DavLock
            # DO NOT REMOVE THE COMMENTS!
            # IF YOU REMOVE THEM, WEBDAV WILL NOT WORK ANYMORE!
      # WEBDAV BEGIN
            # WEBDAV END
        </IfModule>

DocumentRoot /var/www/edv-jellissen.de/web/joomla
</VirtualHost>
Ich habe gerade mal die Datei index.html zum testen in das Verzeichnis error verschoben.
Demnach sollte er ja im DocumentRoot Verzeichnis keine index Datei finden und eine Fehlermeldung ausgeben. Das tut er nicht. Zum anderen wird die Datei in dem Ordner error auch nicht gefunden und kann nicht aufgerufen werden :-( :-( :-(
Genau das gleiche habe ich auch unter einer anderen Domain getestet. Das gleiche Problem.
 
Zuletzt bearbeitet:

Werbung