Nginx als Webserver:
Hat man in der "Web-Station" seinen virtuellen Host Eintrag mit einem Apache Server eingetragen sind keine weiteren Schritte notwendig.
Möchte man seinen Host Eintrag mit einem Nginx Server aufsetzen, einfach diesen als "HTTP-Backend-Server" auswählen und speichern - s. Screen ds-webstation-vhost-nginx.jpg.
Hierbei müssen jedoch weitere Einstellungen vorgenommen werden.
Die "Web Station" speichert alle virtuellen Host Einträge unter /etc/nginx/app.d/server.webstation-vhost.conf
Diese wird bei jeder Änderung in der "Web Station" neu geschrieben, beinhaltet in der letzten Zeile (je vhost Eintrag) jedoch immer eine include Anweisung der Art:
Code:
server {
...
include /usr/local/etc/nginx/conf.d/785af8db-fb8b-44a8-b3ff-811bf048094e/user.conf*;
}
In dem hier includierten Verzeichns kann z.B: eine user.conf.contao4-vhost.conf mit folgenden Einträgen update sicher angelegt werden:
Code:
index app.php index.html index.htm index.cgi index.php index.php5;
location ~* \.(php[345]?|phtml)$ {
fastcgi_index app.php;
}
location / {
try_files $uri $uri/ /app.php?$args;
}
UPDATE:
Mit der obigen, rudimentären Konfiguration funktioniert der Zugriff auf das Contao Frontend, Backend und auf das Installtool.
Möchte man darüberhinaus auch auf die app_dev.php und den CM (contao-manager.phar.php) zugreifen funktioniert dies mit folgenden Angaben - bitte gegenüber obige vollständig ersetzen :
Code:
# Contao/Symfony Configuration
# see https://www.nginx.com/resources/wiki/start/topics/recipes/symfony/
# GENERAL
# try to serve file directly, fallback to app.php
location / {
index app.php;
try_files $uri $uri/ /app.php?$args;
}
# DEV
# app_dev.php and contao-manager.phar.php
location ~ ^/(app_dev|contao-manager\.phar)\.php(/|$) {
# depends on webstation vhost PHP config selection
fastcgi_pass unix:/run/php-fpm/php70-fpm.sock;
#fastcgi_pass unix:/run/php-fpm/php56-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi.conf;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
}
# PROD
location ~ ^/app\.php(/|$) {
fastcgi_split_path_info ^(.+\.php)(/.*)$;
}
Hinweis:
Abhängig von den angegebenen PHP Einstellungen in der jeweiligen "Web Station" vhost müssen die "fastcgi_pass ..." Zeilen kommentiert/auskommentiert werden (hier PHP70 aktiviert).
Im Verzeichnis /etc/nginx dann mit
unbedingt überprpüfen ob die Konfigurationen einwandfrei sind!!! Und erst dann den Server über
Code:
sudo nginx -s reload
neu starten
Lesezeichen