File: /volume1/@appstore/WebStation/misc/VirtualHost-nginx.mustache
{{#hosts}}
server {
{{#port.http}}
listen {{.}}{{^fqdn}} default_server{{/fqdn}};
listen [::]:{{.}}{{^fqdn}} default_server{{/fqdn}};
{{/port.http}}
{{#port.https}}
listen {{.}} ssl{{^fqdn}} default_server{{/fqdn}};
listen [::]:{{.}} ssl{{^fqdn}} default_server{{/fqdn}};
{{/port.https}}
{{#fqdn}}
server_name {{fqdn}} {{#mdns}}{{fqdn}}.local{{/mdns}};
{{#mdns}}if ( $host !~ "(^{{fqdn}}$|^{{fqdn}}.local$)" ) { return 404; }{{/mdns}}
{{^mdns}}if ( $host !~ "(^{{fqdn}}$)" ) { return 404; }{{/mdns}}
{{/fqdn}}
{{^fqdn}}
server_name _;
{{/fqdn}}
{{> /var/packages/WebStation/target/misc/SSLProfile.mustache }}
{{> /var/packages/WebStation/target/misc/nginx_web_error_page}}
{{> /usr/syno/share/nginx/acl.mustache}}
{{#SSLProfile.hsts}}{{#fqdn}}
if ($server_port = "80") {
return 301 https://$server_name$request_uri;
}
{{/fqdn}}{{/SSLProfile.hsts}}
{{^enable}}
location / {
return 404;
}
{{/enable}}
{{#enable}}
{{#nginx}}
root "{{root}}";
index {{#index}} {{.}} {{/index}};
{{#php}}
location ~* \.(php[345]?|phtml)$ {
fastcgi_pass unix:/run/php-fpm/{{php_handler}}.sock;
{{#fqdn}}fastcgi_param HOST $server_name;{{/fqdn}}
{{#connect_timeout}}fastcgi_connect_timeout {{connect_timeout}}s;{{/connect_timeout}}
{{#read_timeout}}fastcgi_read_timeout {{read_timeout}}s;{{/read_timeout}}
{{#send_timeout}}fastcgi_send_timeout {{send_timeout}}s;{{/send_timeout}}
include fastcgi.conf;
fastcgi_split_path_info ^(.+\.php)(.*)$;
set $filename "index.php";
if ( $fastcgi_script_name ~ "^/+(.*)$" ) {
set $filename $1;
}
fastcgi_param SCRIPT_FILENAME $filename;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $fastcgi_path_info;
}
{{/php}}
{{#python_handler}}
location / {
uwsgi_pass unix:/run/python-uwsgi/{{python_handler}}.sock;
{{#fqdn}}uwsgi_param HOST $server_name;{{/fqdn}}
{{#connect_timeout}}uwsgi_connect_timeout {{connect_timeout}}s;{{/connect_timeout}}
{{#read_timeout}}uwsgi_read_timeout {{read_timeout}}s;{{/read_timeout}}
{{#send_timeout}}uwsgi_send_timeout {{send_timeout}}s;{{/send_timeout}}
include uwsgi_params;
}
{{/python_handler}}
include /usr/local/etc/nginx/conf.d/{{uuid}}/user.conf*;
{{/nginx}}
{{#apache22}}
include proxy.conf;
location / {
{{#connect_timeout}}proxy_connect_timeout {{connect_timeout}}s;{{/connect_timeout}}
{{#read_timeout}}proxy_read_timeout {{read_timeout}}s;{{/read_timeout}}
{{#send_timeout}}proxy_send_timeout {{send_timeout}}s;{{/send_timeout}}
proxy_pass http://{{listen}};
}
{{/apache22}}
{{#apache24}}
include proxy.conf;
location / {
{{#connect_timeout}}proxy_connect_timeout {{connect_timeout}}s;{{/connect_timeout}}
{{#read_timeout}}proxy_read_timeout {{read_timeout}}s;{{/read_timeout}}
{{#send_timeout}}proxy_send_timeout {{send_timeout}}s;{{/send_timeout}}
proxy_pass http://{{listen}};
}
{{/apache24}}
{{/enable}}
}
{{/hosts}}