|
|
@@ -0,0 +1,54 @@
|
|
|
+server {
|
|
|
+ listen %ip%:%proxy_ssl_port% ssl http2;
|
|
|
+ server_name %domain% %alias%;
|
|
|
+ root /var/lib/roundcube;
|
|
|
+ index index.php index.html index.htm;
|
|
|
+ access_log /var/log/nginx/domains/%domain%.log combined;
|
|
|
+ error_log /var/log/nginx/domains/%domain%.error.log error;
|
|
|
+
|
|
|
+ ssl_certificate %ssl_pem%;
|
|
|
+ ssl_certificate_key %ssl_key%;
|
|
|
+ ssl_stapling on;
|
|
|
+ ssl_stapling_verify on;
|
|
|
+
|
|
|
+ location ~ /\.(?!well-known\/) {
|
|
|
+ deny all;
|
|
|
+ return 404;
|
|
|
+ }
|
|
|
+
|
|
|
+ location ~ ^/(README.md|config|temp|logs|bin|SQL|INSTALL|LICENSE|CHANGELOG|UPGRADING)$ {
|
|
|
+ deny all;
|
|
|
+ return 404;
|
|
|
+ }
|
|
|
+
|
|
|
+ location / {
|
|
|
+ proxy_pass https://%ip%:%web_ssl_port%;
|
|
|
+ try_files $uri $uri/ =404;
|
|
|
+ alias /var/lib/roundcube/;
|
|
|
+ location ~* ^.+\.(ogg|ogv|svg|svgz|swf|eot|otf|woff|woff2|mov|mp3|mp4|webm|flv|ttf|rss|atom|jpg|jpeg|gif|png|ico|bmp|mid|midi|wav|rtf|css|js|jar)$ {
|
|
|
+ expires 7d;
|
|
|
+ fastcgi_hide_header "Set-Cookie";
|
|
|
+ }
|
|
|
+
|
|
|
+ location ~ [^/]\.php(/|$) {
|
|
|
+ fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
|
|
+ if (!-f $document_root$fastcgi_script_name) {
|
|
|
+ return 404;
|
|
|
+ }
|
|
|
+
|
|
|
+ fastcgi_pass %backend_lsnr%;
|
|
|
+ fastcgi_index index.php;
|
|
|
+ include /etc/nginx/fastcgi_params;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ location /error/ {
|
|
|
+ alias /var/www/document_errors/;
|
|
|
+ }
|
|
|
+
|
|
|
+ location @fallback {
|
|
|
+ proxy_pass https://%ip%:%web_ssl_port%;
|
|
|
+ }
|
|
|
+
|
|
|
+ include %home%/%user%/conf/mail/%root_domain%/%proxy_system%.conf_*;
|
|
|
+}
|