diff --git a/config/nginx/conf.d/vhosts.conf.example b/config/nginx/conf.d/vhosts.conf.example index 4367f80..2363958 100644 --- a/config/nginx/conf.d/vhosts.conf.example +++ b/config/nginx/conf.d/vhosts.conf.example @@ -34,32 +34,3 @@ server { fastcgi_param SERVER_NAME $host; } } - -server { - server_name - wordpress.ru.local.wpstudio.ru - ; - listen 80; - root $root; - index index.html index.htm index.php; - location / { - try_files $uri $uri/ /index.php?$args; - } - rewrite /wp-admin$ $scheme://$host$uri/ permanent; - location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ { - access_log off; - } - location ~ [^/]\.php(/|$) { - fastcgi_split_path_info ^(.+?\.php)(/.*)$; - if (!-f $document_root$fastcgi_script_name) { - return 404; - } - include fastcgi_params; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - fastcgi_param PATH_INFO $fastcgi_path_info; - fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; - fastcgi_param SERVER_NAME $host; - fastcgi_pass php74; - fastcgi_index index.php; - } -} diff --git a/config/nginx/conf.d/z-grav.conf.example b/config/nginx/conf.d/z-grav.conf.example new file mode 100644 index 0000000..89bc08f --- /dev/null +++ b/config/nginx/conf.d/z-grav.conf.example @@ -0,0 +1,24 @@ +server { + server_name loc.wpstudio-new; + listen 80; + root $root; + index index.html index.htm index.php; + location / { + try_files $uri $uri/ /index.php?$query_string; + } + location ~ \.php$ { + fastcgi_pass fpm74; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + } + ## Begin - Security + # deny all direct access for these folders + location ~* /(\.git|cache|bin|logs|backup|tests)/.*$ { return 403; } + # deny running scripts inside core system folders + location ~* /(system|vendor)/.*\.(txt|xml|md|html|yaml|yml|php|pl|py|cgi|twig|sh|bat|example)$ { return 403; } + # deny running scripts inside user folder + location ~* /user/.*\.(txt|md|yaml|yml|php|pl|py|cgi|twig|sh|bat)$ { return 403; } + # deny access to specific files in the root folder + location ~ /(LICENSE\.txt|composer\.lock|composer\.json|nginx\.conf|web\.config|htaccess\.txt|\.htaccess) { return 403; } + ## End - Security +} diff --git a/config/nginx/conf.d/z-s3.conf.example b/config/nginx/conf.d/z-s3.conf.example new file mode 100644 index 0000000..002f3fc --- /dev/null +++ b/config/nginx/conf.d/z-s3.conf.example @@ -0,0 +1,19 @@ +server { + server_name s3.local; + ignore_invalid_headers off; + client_max_body_size 0; + proxy_buffering off; + location / { + proxy_pass http://minio:9000; + proxy_set_header Host $host; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Real-IP $remote_addr; + proxy_connect_timeout 300; + # Default is HTTP/1, keepalive is only enabled in HTTP/1.1 + proxy_http_version 1.1; + proxy_set_header Connection ""; + chunked_transfer_encoding off; + } + + listen 80; +} diff --git a/config/nginx/conf.d/z-wordpress.conf.example b/config/nginx/conf.d/z-wordpress.conf.example new file mode 100644 index 0000000..6289598 --- /dev/null +++ b/config/nginx/conf.d/z-wordpress.conf.example @@ -0,0 +1,67 @@ +server { + server_name + wp-with-file-proxy.local.wpstudio.ru + ; + listen 80; + root $root; + index index.html index.htm index.php; + location / { + try_files $uri $uri/ /index.php?$args; + } + rewrite /wp-admin$ $scheme://$host$uri/ permanent; + location ~* ^/wp-content/uploads/.*$ { + expires max; + proxy_pass $uploads_upstream; + } + location ~* ^/uploads/.*$ { + expires max; + proxy_pass $uploads_upstream; + } + location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ { + access_log off; + } + location ~ [^/]\.php(/|$) { + fastcgi_split_path_info ^(.+?\.php)(/.*)$; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param PATH_INFO $fastcgi_path_info; + fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; + + fastcgi_pass fpm74; + fastcgi_index index.php; + fastcgi_read_timeout 3000; + } +} + +server { + server_name + wp.local.wpstudio.ru + ; + listen 80; + root $root; + index index.html index.htm index.php; + location / { + try_files $uri $uri/ /index.php?$args; + } + rewrite /wp-admin$ $scheme://$host$uri/ permanent; + location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ { + access_log off; + } + location ~ [^/]\.php(/|$) { + fastcgi_split_path_info ^(.+?\.php)(/.*)$; + if (!-f $document_root$fastcgi_script_name) { + return 404; + } + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param PATH_INFO $fastcgi_path_info; + fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; + + fastcgi_pass fpm74; + fastcgi_index index.php; + fastcgi_read_timeout 3000; + } +} diff --git a/config/nginx/conf.d/z-yii.conf.example b/config/nginx/conf.d/z-yii.conf.example new file mode 100644 index 0000000..6111382 --- /dev/null +++ b/config/nginx/conf.d/z-yii.conf.example @@ -0,0 +1,41 @@ +server { + server_name + yii.local.slave.dimti.ru + backend.yii.local.slave.dimti.ru + ; + root $root; + set $yii_bootstrap "index.php"; + charset utf-8; + location / { + index index.html $yii_bootstrap; + try_files $uri $uri/ /$yii_bootstrap?$args; + } + location ~ ^/(protected|framework|themes/\w+/views) { + deny all; + } + # отключаем обработку запросов фреймворком к несуществующим статичным файлам + location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ { + try_files $uri =404; + } + # передаем PHP-скрипт серверу FastCGI, прослушивающему адрес 127.0.0.1:9000 + location ~ \.php { + fastcgi_split_path_info ^(.+\.php)(.*)$; + # позволяем yii перехватывать запросы к несуществующим PHP-файлам + set $fsn /$yii_bootstrap; + if (-f $document_root$fastcgi_script_name){ + set $fsn $fastcgi_script_name; + } + fastcgi_pass fpm74; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fsn; + # PATH_INFO и PATH_TRANSLATED могут быть опущены, но стандарт RFC 3875 определяет для CGI + fastcgi_param PATH_INFO $fastcgi_path_info; + fastcgi_param PATH_TRANSLATED $document_root$fsn; + } + # не позволять nginx отдавать файлы, начинающиеся с точки (.htaccess, .svn, .git и прочие) + location ~ /\. { + deny all; + access_log off; + log_not_found off; + } +}