ispconfig3 - Kann keine Subdomain anlegen

Dieses Thema im Forum "Entwicklerforum" wurde erstellt von fibbs, 17. Sep. 2008.

  1. fibbs

    fibbs New Member

    Hi!

    Ich habe hier vielleicht einen Bug gefunden:

    Ich habe nun wieder eine frische Installation von ispconfig3 aus dem svn gezogen und auf einem hardy installiert.

    Um mehr Einblick zu haben, schreibe ich die Meldungen von /usr/local/ispconfig/server/server.sh via syslog-ng in ein eigenes file.

    Ich habe eine Site angelegt, jetzt versuche ich eine Subdomain zu erzeugen, ich gehe also auf sites, wähle Subdomain aus, sage "add subdomain".

    - Domain [sub].testuser.com
    - Redirect Type [No redirect]
    - Redirect Path []
    - Active [x]

    Ich hoffe ich verstehe das richtig, dass ich wenn ich ein Extra-Verzeichnis im Dateibaum haben möchte, ich keine Angaben bei Redirect machen sollte, sondern ispconfig einen neuen vhost anlegen sollte.

    In meinem Log von server.sh erscheint nun das hier:

    Code:
    Sep 17 10:10:01 marge logger: finished.
    Sep 17 10:11:01 marge logger: ln: creating symbolic link `/var/clients/client1/testuser.com': No such file or directory
    Sep 17 10:11:01 marge logger: apache2: Could not reliably determine the server's fully qualified domain name, using 78.47.25.254 for ServerName
    Sep 17 10:11:01 marge logger: finished.
    Sep 17 10:12:01 marge logger: finished.
    
    komisch kommt mir schonmal das mit dem "creating symbolic link" vor, also mal schnell nachgeschaut, woran das liegen könnte:

    Code:
    root@marge:/var/clients# find
    .
    ./client0
    ./client0/web1
    ./client0/web1/ssl
    ./client0/web1/.bash_history
    ./client0/web1/log
    ./client0/web1/web
    ./client0/web1/web/index.html
    ./client0/web1/web/error
    ./client0/web1/web/error/fileNotFound.html
    ./client0/web1/web/error/forbidden.html
    ./client0/web1/web/error/internalServerError.html
    ./client0/web1/web/error/overloaded.html
    ./client0/web1/web/error/authorizationRequired.html
    ./client0/web1/web/error/methodNotAllowed.html
    ./client0/web1/web/error/invalidSyntax.html
    ./client0/web1/cgi-bin
    
    Ahaaa! Er versucht den Link irgendwo nach /var/clients/client1 zu packen, das dir existiert aber gar nicht...

    Jetzt loggt sich der client ein per ssh (vorher shelluser erzeugt) und schaut sich seinen Dateibaum an:

    Code:
    web1@marge:~$ find
    .
    ./ssl
    ./.bash_history
    ./log
    ./web
    ./web/index.html
    ./web/error
    ./web/error/fileNotFound.html
    ./web/error/forbidden.html
    ./web/error/internalServerError.html
    ./web/error/overloaded.html
    ./web/error/authorizationRequired.html
    ./web/error/methodNotAllowed.html
    ./web/error/invalidSyntax.html
    ./cgi-bin
    web1@marge:~$ 
    
    Außerdem sehe ich mir das Verzeichnis /etc/apache2/sites-enabled an:

    Code:
    root@marge:~# ls -l /etc/apache2/sites-enabled/
    total 0
    lrwxrwxrwx 1 root root 44 Sep 17 09:27 ispconfig.vhost -> /etc/apache2/sites-available/ispconfig.vhost
    lrwxrwxrwx 1 root root 47 Sep 17 09:46 testuser.com.vhost -> /etc/apache2/sites-available/testuser.com.vhost
    
    Weit und breit keine Subdomain. Also lösche ich den Eintrag in der Webgui wieder heraus, und schaue erneut ins server.sh log:

    Code:
    Sep 17 10:20:01 marge logger: Warning: unlink(/etc/apache2/sites-available/sub.testuser.com.vhost): No such file or directory in /usr/local/ispconfig/server/plugins-available/apache2_plugin.inc.php on line 485
    Sep 17 10:20:01 marge logger: Usage: userdel [options] LOGIN
    Sep 17 10:20:01 marge logger: 
    Sep 17 10:20:01 marge logger: Options:
    Sep 17 10:20:01 marge logger:   -f, --force            force removal of files, even if not owned by user
    Sep 17 10:20:01 marge logger:   -h, --help            display this help message and exit
    Sep 17 10:20:01 marge logger:   -r, --remove            remove home directory and mail spool
    Sep 17 10:20:01 marge logger: 
    Sep 17 10:20:01 marge logger: finished.
    
    Ach da schau her: Hier wird versucht, den vhost zu löschen, der aber gar nicht angelegt wurde. Desweiteren möchte hier ein Benutzer anhand userdel gekillt werden, ich frage mich allerdings welcher? Schließlich habe ich in der Oberfläche keinen user gelöscht...


    Mache ich irgendwas grundsätzlich falsch oder habe ich hier ein paar kleine Fehler entdeckt?


    Christian
     
  2. fibbs

    fibbs New Member

    BTW. als Nachtrag:

    Den Fehler mit dem Symlink im falschen Verzeichnis bekomme ich auch, wenn ich auf dem vorhandenen Kunden (bei mir im Filesystem client0, da der erste und einzige den ich angelegt habe) eine neue Site anlegen möchte:

    Code:
    Sep 17 10:28:01 marge logger: ln: creating symbolic link `/var/clients/client1/test2.de': No such file or directory
    Sep 17 10:28:01 marge logger: apache2: Could not reliably determine the server's fully qualified domain name, using 78.47.25.254 for ServerName
    Sep 17 10:28:01 marge logger: [Wed Sep 17 10:28:01 2008] [warn] _default_ VirtualHost overlap on port 80, the first has precedence
    
    Wir sehen, dass auch hier wieder client1 anstelle client0 verwendet wird. Es wird trotzdem korrekterweise ein Verzeichnis "web5" innerhalb client0 angelegt, dort die Filestruktur aufgebaut etc. Auch der neu angelegte vhost für test2.de enthält den richtigen Pfad.

    Allerdings habe ich jetzt noch ein Problem:
    Wenn ich den Shelluser, der vorher auf testuser.com (die erste site dieses clients) gebunden war auf test2.de ändere und speichere, passiert gar nichts. Der User verbleibt beim alten Homedirectory.

    Auszug /etc/passwd:
    Code:
    shell01:x:5003:5003::/var/clients/client0/web1:/bin/bash
    
    Lösche ich den user aber und lege ihn neu an, scheint es zu klappen:
    Code:
    shell01:x:5004:5003::/var/clients/client0/web5:/bin/bash
    
     
  3. fibbs

    fibbs New Member

    Ich glaube ich konnte das Problem lokalisieren:

    Ich habe nun alle sites gelöscht, einen zweiten Client erzeugt.

    Jedem der beiden Clients habe ich eine Site verpasst:

    Code:
    Sep 17 10:45:01 marge logger: ln: creating symbolic link `/var/clients/client2/testuser.com': No such file or directory
    Sep 17 10:45:01 marge logger: apache2: Could not reliably determine the server's fully qualified domain name, using 78.47.25.254 for ServerName
    Sep 17 10:45:01 marge logger: finished.
    Sep 17 10:46:02 marge logger: finished.
    Sep 17 10:47:01 marge logger: ln: creating symbolic link `/var/clients/client1/test2.de': No such file or directory
    Sep 17 10:47:01 marge logger: apache2: Could not reliably determine the server's fully qualified domain name, using 78.47.25.254 for ServerName
    Sep 17 10:47:01 marge logger: [Wed Sep 17 10:47:01 2008] [warn] _default_ VirtualHost overlap on port 80, the first has precedence
    
    Wie man sieht, versucht ispconfig einerseits links in client1 für den einen und client2 für den anderen client zu setzen, die Directories gibt es aber nicht. Im Wahren Leben und in den vhost-Konfigurationsdateien liegen alle beide Pfade unter client0.

    Ein Bug? Ein Feature?

    Um den Fehler mit dem __default__ overlap kümmern wir uns später, schlage ich vor.
     
  4. planet_fox

    planet_fox Super-Moderator

    Ok, hab ich grad überprüft und es ist so ich schau mal in den Bugtracker ob der Fehlerbekannt ist.
     
  5. Till

    Till Administrator

    Nein, das ist so nicht richtig. Wenn Du ein eigenes Verzeichnis haben möchtest, musst Du eine neue Domain anlegen. Eine neue subdomain legt auch nur einen Alias Eintrag im Vhost an und kein neues Verzeichnis.

    Was den Fheler mit dem falschen Symlink angeht, muss ich mir das mal näher ansehen.
     

Diese Seite empfehlen