ISPConfig 3 auf Debian Wheezy

Dieses Thema im Forum "Installation und Konfiguration" wurde erstellt von edvjellissen, 17. Sep. 2015.

  1. edvjellissen

    edvjellissen Member

    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.
     
  2. robotto7831a

    robotto7831a Member

    Wie änderst Du denn den DocumentRoot über ISPConfig?
     
  3. edvjellissen

    edvjellissen Member

    Hallo,
    ich bin im Endkunden unter Webseiten --> Webseite --> {Domain auswählen] --> Registerkarte Umleitung --> Weiterleitungspfad.
     
  4. robotto7831a

    robotto7831a Member

    Ähm da stellt man aber nicht den DocumentRoot ein. Erzähl doch einfach was Du einstellen willst.
     
  5. edvjellissen

    edvjellissen Member

    Ich möchte gerne meine Hauptdomain von dem Verzeichnis/web in das Verzeichnis /web/joomla umleiten. Mehr nicht
     
  6. Till

    Till Administrator

    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.
     
  7. edvjellissen

    edvjellissen Member

    Wo bitte finde ich das Feld?
     
  8. Till

    Till Administrator

    Optionen tab der webseite.
     
  9. edvjellissen

    edvjellissen Member

    Ich habe nur die Registerkarten Domain, Umleitung, SSl, Statistiken und Backup.
     
  10. Till

    Till Administrator

    Dann bist Du nicht als administrator eingelogged.
     
  11. edvjellissen

    edvjellissen Member

    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.
     
  12. Till

    Till Administrator

    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.

    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 ;)

    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.

    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.
     
    robotto7831a gefällt das.
  13. edvjellissen

    edvjellissen Member

    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.
     
  14. robotto7831a

    robotto7831a Member

    Kann ich nicht bestätigen. Gerade eben selber ausprobiert für einen Spezialfall.

    Hast Du auch gewartet bis die Datei neu geschrieben wurde?
     
  15. Till

    Till Administrator

    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. edvjellissen

    edvjellissen Member

    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
     
  17. robotto7831a

    robotto7831a Member

    Das funktioniert. Poste doch mal was du genau geschrieben hast.
     
  18. edvjellissen

    edvjellissen Member

    Ich habe genau das geschrieben.
    DocumentRoot /var/www/edv-jellissen.de/web/joomla
     
  19. robotto7831a

    robotto7831a Member

    Spielt dir vielleicht dein Browsercache einen Streich?
     
  20. edvjellissen

    edvjellissen Member

    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: 18. Sep. 2015

Diese Seite empfehlen