Ergebnis 1 bis 9 von 9

Thema: Contao 4.2: Installation unter Nginx

  1. #1
    Contao-Nutzer
    Registriert seit
    23.04.2014.
    Beiträge
    8

    Standard Contao 4.2: Installation unter Nginx

    Hallo,

    es ist eine Weile her seit ich mit Contao gearbeitet habe. Ich möchte aber mit der neuen 4.2 Version ein neuen Versuch starten.

    Leider kriege ich es nicht auf meinem Server zum laufen.
    Kurz ein paar Infos zum Server: Ich habe ein eigenen Webserver mit Nginx und ISPconfig und PHP 5.6 laufen. Dort laufen bereits ein paar Seiten (keine Contao Seiten).
    Ich schaffe es leider nicht Contao 4.2 zu installieren, ich denke ich habe einfach nicht die richtige NGINX Config gefunden.

    Ich habe die Contao 4.2 Files in das neu angelegte webroot kopiert.
    Ich kann auch die domain.bla/web/install.php aufrufen. Das Installtool Passwort eingeben kann ich auch und die Datenbankinformationen habe ich auch eingegeben. Aber sobald ich dort auf Speichern klicke werde ich auf die Seite domain.bla/contao/install weitergeleitet. Diese existiert nicht -> 500 Internal Server Error ...
    In der Verzeichnisstruktur kann ich aber sehen das Contao bereits weitere Verzeichnisse angelegt hat: files, system, templates.

    Kann mir jemand weiterhelfen? Welche Infos braucht ihr noch?

    Beste Grüße Axe

    P.S.: Seid lieb Ich lerne noch ^^

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Da du nginx verwendest, greifen natürlich die .htaccess Konfigurationen im /web Folder nicht. Die Anweisungen dort musst du nun in der nginx Konfiguration selbst umsetzen.

    Infos dazu findest du zB hier: http://symfony.com/doc/current/setup...ion.html#nginx (bin mir aber nicht sicher, ob die contao/standard-edition eine abgewandelte .htaccess verwendet).
    Geändert von Spooky (16.08.2016 um 08:39 Uhr)

  3. #3
    Contao-Nutzer
    Registriert seit
    23.04.2014.
    Beiträge
    8

    Standard Nginx conf

    Hi,
    habe jetzt mal die hier zusammengebastelt.
    Die conf hab ich die nginx Directives unter Options der Web Property im ISPConfig eingetragen.
    Code:
    location / {
            # try to serve file directly, fallback to app.php
            try_files $uri /app.php$is_args$args;
        }
    
    location ~ ^/app\.php(/|$) {
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_split_path_info ^(.+\.php)(/.*)$;
            include fastcgi_params;
            # When you are using symlinks to link the document root to the
            # current version of your application, you should pass the real
            # application path instead of the path to the symlink to PHP
            # FPM.
            # Otherwise, PHP's OPcache may not properly detect changes to
            # your PHP files (see https://github.com/zendtech/ZendOptimizerPlus/issues/126
            # for more information).
            fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
            fastcgi_param DOCUMENT_ROOT $realpath_root;
            # Prevents URIs that include the front controller. This will 404:
            # http://domain.tld/app.php/some-path
            # Remove the internal directive to allow URIs like this
            internal;
        }
    	
    	    # return 404 for all other php files not matching the front controller
        # this prevents access to other php files you don't want to be accessible.
        location ~ \.php$ {
          return 404;
        }
    }
    Aber ich werde nach der Eingabe der Datenbankinformationen auf /contao/install weitergeleitet --> ERROR 404 - Not Found!
    Im Log sehe ich das Contao versucht die Seite /web/contao zu öffnen. Das schlägt fehl, da es diese nicht gibt.

    Code:
    2016/08/16 11:38:45 [error] 7304#0: *28 open() "/var/www/contao.domain.tld/web/contao" failed (2: No such file or directory), client: 87.138.112.167, server: contao.domain.tld, request: "GET /contao HTTP/1.1", host: "contao.domain.tld"
    Jemand noch eine Idee? Ist meine nginx conf noch falsch?

    P.S. Die angelegte Contao Datenbank ist auch noch leer, falls das irgenwie wichtig ist. Aber ich glaube das wäre ja der nächste Setup Punkt oder?
    Geändert von axe1987 (16.08.2016 um 10:46 Uhr)

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Zitat Zitat von axe1987 Beitrag anzeigen
    ich kann auch die domain.bla/web/install.php aufrufen.
    Du musst den DocumentRoot in den /web Ordner legen. DocumentRoots im Installation-Root werden nur unter der localhost Domain unterstützt.

    Und falls du Contao 4 unter localhost benutzen möchtest, musst du aktuell noch auf diesen Fehler hier Rücksicht nehmen: https://github.com/contao/installation-bundle/issues/25
    Das heißt, wenn du bspw. die install.php mit http://localhost/…/web/install.php aufrufst, wirst du fälschlicherweise auf http://localhost/contao/install weitergeleitet, statt auf http://localhost/…/web/contao/install . Du musst die letztere URL also manuell aufrufen, nachdem du die Datenbank Daten eingegeben hast.
    Geändert von Spooky (17.08.2016 um 08:21 Uhr)

  5. #5
    Contao-Nutzer
    Registriert seit
    23.04.2014.
    Beiträge
    8

    Standard

    Hi,
    danke erstmal für die Antwort.
    Ich muss aber so doof fragen Wo muss ich den DocumentRoot auf /web stellen? In der NGINX Config? Oder in einer der Config Dateien von Contao?

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    In der Konfiguration deines Webservers, also in der nginx Konfiguration.

  7. #7
    Contao-Nutzer
    Registriert seit
    23.04.2014.
    Beiträge
    8

    Standard

    Hmm das hat auch nicht geholfen.
    Ich habe die documentRoot einmal in der VHOST Datei und einmal in den Nginx Directives im ISPConfig eingetragen.
    Beides hat nicht funktuioniert.

    Noch irgendwelche Ideen?

    Grüße
    Axe

  8. #8
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Was meinst du mit "vhost Datei"? Bei nginx werden die vhosts normalerweise in einem Ordner namens /etc/nginx/sites-available angelegt bspw. Erkläre mal genau was du gemacht hast.

    Generell kann ich bei nginx aber nur rudimentären Support geben oder dir nur das sagen, was Google sagt - und das kannst du dir auch selbst ermitteln

  9. #9
    Contao-Nutzer
    Registriert seit
    03.09.2009.
    Ort
    Baunatal
    Beiträge
    122
    Partner-ID
    6087

    Standard

    Schau dir mal https://gist.github.com/RavuAlHemio/...e7d6d125763555 an. Da ist eine Beispielkonfiguration für 3 und 4.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •