%PDF- %PDF-
Direktori : /etc/nginx/bx/conf/ |
Current File : //etc/nginx/bx/conf/bitrix_general.conf |
# # Main configuration file for site with Bitrix CMS. # It doesn't contain configuration for .php and / # as their treatment depends on the type of caching on the site: # - general cache - default option # - composite cache + file - can be enabled in the menu # - composite cache + memcached - can be enabled in the menu # # Assign error handler include bx/conf/errors.conf; # Include im subscrider handlers include bx/conf/im_subscrider.conf; # Deny external access to critical areas include bx/conf/bitrix_block.conf; # Intenal locations location ^~ /upload/support/not_image { internal; } # scale location include bx/conf/bitrix_scale.conf; # Cache location: composite and general site location ~* @.*\.html$ { internal; # disable browser cache, php manage file expires -1y; add_header X-Bitrix-Composite "Nginx (file)"; } # Player options, disable no-sniff location ~* ^/bitrix/components/bitrix/player/mediaplayer/player$ { add_header Access-Control-Allow-Origin *; } # ticket id: 96045 location ~* ^/bitrix/rk.php { valid_referers $host; if ($invalid_referer) { return 403; } proxy_pass $proxyserver; } # Process dav request on # main company # extranet # additional departments # locations that ends with / => directly to apache location ~ ^(/[^/]+)?(/docs|/workgroups|/company/profile|/bitrix/tools|/company/personal/user|/mobile/webdav|/contacts/personal).*/$ { proxy_pass $proxyserver; } # Add / to request location ~ ^(/[^/]+)?(/docs|/workgroups|/company/profile|/bitrix/tools|/company/personal/user|/mobile/webdav|/contacts/personal) { set $addslash ""; if (-d $request_filename) { set $addslash "${addslash}Y"; } if ($is_args != '?') { set $addslash "${addslash}Y"; } if ($addslash = "YY" ) { proxy_pass $proxyserver$request_uri/; } proxy_pass $proxyserver; } # Accept access for merged css and js location ~* ^/bitrix/cache/(css/.+\.css|js/.+\.js)$ { expires 30d; error_page 404 /404.html; } # Disable access for other assets in cache location location ~* ^/bitrix/cache { deny all; } # Excange and Outlook location ~ ^/bitrix/tools/ws_.*/_vti_bin/.*\.asmx$ { proxy_pass $proxyserver; } # Groupdav location ^~ /bitrix/groupdav.php { proxy_pass $proxyserver; } # Use nginx to return static content from s3 cloud storage # /upload/bx_cloud_upload/<schema>.<backet_name>.<s3_point>.amazonaws.com/<path/to/file> location ^~ /upload/bx_cloud_upload/ { location ~ ^/upload/bx_cloud_upload/(http[s]?)\.([^/:\s]+)\.(s3|s3-us-west-1|s3-eu-west-1|s3-ap-southeast-1|s3-ap-northeast-1)\.amazonaws\.com/([^\s]+)$ { internal; resolver 8.8.8.8; proxy_method GET; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Server $host; #proxy_max_temp_file_size 0; proxy_pass $1://$2.$3.amazonaws.com/$4; } location ~ ^/upload/bx_cloud_upload/(http[s]?)\.([^/:\s]+)\.([^/:\s]+)\.([^/:\s]+)\.rackcdn\.com/([^\s]+)$ { internal; resolver 8.8.8.8; proxy_method GET; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Server $host; #proxy_max_temp_file_size 0; proxy_pass $1://$2.$3.$4.rackcdn.com/$5; } location ~ ^/upload/bx_cloud_upload/(http[s]?)\.([^/:\s]+)\.clodo\.ru\:(80|443)/([^\s]+)$ { internal; resolver 8.8.8.8; proxy_method GET; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Server $host; #proxy_max_temp_file_size 0; proxy_pass $1://$2.clodo.ru:$3/$4; } location ~ ^/upload/bx_cloud_upload/(http[s]?)\.([^/:\s]+)\.commondatastorage\.googleapis\.com/([^\s]+)$ { internal; resolver 8.8.8.8; proxy_method GET; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Server $host; #proxy_max_temp_file_size 0; proxy_pass $1://$2.commondatastorage.googleapis.com/$3; } location ~ ^/upload/bx_cloud_upload/(http[s]?)\.([^/:\s]+)\.selcdn\.ru/([^\s]+)$ { internal; resolver 8.8.8.8; proxy_method GET; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Server $host; #proxy_max_temp_file_size 0; proxy_pass $1://$2.selcdn.ru/$3; } location ~* .*$ { deny all; } } # Static content location ~* ^/(upload|bitrix/images|bitrix/tmp) { if ( $upstream_http_x_accel_redirect = '' ) { expires 30d; } } location ~* \.(css|js|gif|png|jpg|jpeg|ico|ogg|ttf|woff|eot|otf|svg|woff2)$ { error_page 404 /404.html; expires 30d; } # Nginx server status page location ^~ /nginx-status { stub_status on; allow 127.0.0.0/24; deny all; } # pub & online # telephony and voximplant location ~* ^/(pub/|online/|services/telephony/info_receiver.php|/bitrix/tools/voximplant/) { add_header X-Frame-Options '' always; location ~* ^/(pub/imconnector/|pub/imbot.php|services/telephony/info_receiver.php|bitrix/tools/voximplant/) { proxy_ignore_client_abort on; proxy_pass $proxyserver; } proxy_pass $proxyserver; } # Bitrix setup script location ^~ ^(/bitrixsetup\.php)$ { proxy_pass $proxyserver; proxy_buffering off; }