pushrbx icon

Untitled

pushrbx | PRO | 08/10/14 05:53:16 PM UTC | 0 ⭐ | 522 👁️ | Never ⏰ | []
text |

7.22 KB

|

None

|

0 👍

/

0 👎

server
{
    server_name     localhost;
    error_page 404 /404.html;
     root                    D:/xampp/htdocs/it;
    listen                  80;
    # listen                80 deferred; # for Linux
     #listen                  443 ssl spdy;
    #include                 nginx-bp/enable/ssl.conf;
    #ssl_certificate         /etc/nginx/certs/server.crt;
    #ssl_certificate_key     /etc/nginx/certs/server.key;
     # Allow uploads?
    client_max_body_size    200M;
     # Gzip compression?
    gzip  on;
    gzip_http_version       1.0;
    gzip_min_length         1100;
    gzip_buffers            4 8k;
    gzip_types
        # text/html is always compressed by HttpGzipModule
        text/css
        text/javascript
        text/xml
        text/plain
        text/x-component
        application/javascript
        application/x-javascript
        application/json
        application/xml
        application/rss+xml
        application/atom+xml
        font/truetype
        font/opentype
        application/vnd.ms-fontobject
        image/svg+xml;
    gzip_static             on;
    gzip_proxied            expired no-cache no-store private auth;
    gzip_disable            "msie6";
    gzip_vary               on;
    gzip_comp_level         3;
     # Protect system files?
    location ~ (?:/\..*|~)$
    {
        access_log off;
        log_not_found off;
        deny all;
    }
     location ~* (?:^|/)\. {
       deny all;
    }
     location ~* (?:\.(?:bak|config|sql|fla|psd|ini|log|sh|inc|swp|dist)|~)$ {
	deny all;
    }
    # Restricted access?
    #allow   127.0.0.1;
    #deny    all;
     location @php
    {
        # PHP enabled?
        fastcgi_pass    127.0.0.1:9000;
 		include                     fastcgi_params;
 		fastcgi_split_path_info ^(.+?\.php)(/.*)$;
		if ($uri ~ ^(?<script_name>.+\.php)?(?<path_info>/.*)?$) {}
 		#Pathinfo may be unavailable if try_files is used.
		set $path_info_final $path_info;
		if ($fastcgi_path_info != '')
		{
		    set $path_info_final $fastcgi_path_info;
		}
		fastcgi_param               PATH_INFO $path_info_final;
 		# $fastcgi_script_name is no good, because requests like /image/test/
		# are resolved to /image/test/index.php
		set $script_name_final '/index.php';
		if ($script_name != '')
		{
		    set $script_name_final $script_name;
		}
		fastcgi_param               SCRIPT_FILENAME $document_root$script_name_final;
 		# If the actual target php script doesn't exist
		if (!-e $document_root$script_name_final) {
		    return 404;
		}
 		# override SCRIPT_NAME which is set to $fastcgi_script_name
		fastcgi_param               SCRIPT_NAME $script_name_final;
 		# Pathinfo is used, make it more obvious to scripts
		set $request_uri_final $request_uri;
		if ($path_info_final != '') {
		    set $request_uri_final $path_info_final$is_args$args;
		}
		fastcgi_param               REQUEST_URI         $request_uri_final;
		fastcgi_param  CONTENT_TYPE     $content_type;
		fastcgi_param  CONTENT_LENGTH   $content_length;
		fastcgi_param  QUERY_STRING     $query_string;
 		fastcgi_index               index.php;
 		fastcgi_next_upstream       error timeout;
		fastcgi_keep_conn           on;
 		fastcgi_hide_header         "X-Powered-By";
          # Use this instead if Php is off
        #return 405;
         #Php caching
        #include                nginx-bp/enable/php_cache.conf;
        #fastcgi_cache_valid    200 301 302 304 1h;
        #fastcgi_cache_min_uses 3;
         #Php request limiting?
        #limit_req               zone=reqPerSec10 burst=50 nodelay;
        #limit_conn              conPerIp 25;
         #rewrite ^/(.*)$ /index.php?$1 last;
        #break;
        #try_files !noop! /index.php?$args;
    }
     location ~ ^.*\.php(?:/.*)?$
    {
        try_files !noop! @php;
    }
     # Use custom error pages?
    fastcgi_intercept_errors   on;
    location ~ [4-5][0-9][0-9].html
    {
       internal;
       access_log      off;
       log_not_found   off;
    }
    error_page             404 /404.html;
     # tweaks
    client_body_buffer_size 10K;
    client_header_buffer_size 1k;
    large_client_header_buffers 2 1k;
     # tweaks for higher traffic
    #open_file_cache max=1000 inactive=20s;
    #open_file_cache_valid 30s;
    #open_file_cache_min_uses 2;
    #open_file_cache_errors on;
      # Allowed methods
    if ($request_method !~ ^(OPTIONS|GET|HEAD|POST|PUT|PATCH|DELETE)$ ) {
        return              405;
    }
     if ($bot_ua = 1) {
        set $is_bot 1;
        set $is_human 0;
    }
     if ($bot_ua = 0) {
        set $is_bot 0;
        set $is_human 1;
    }
     # Log bots?
    # "if=" is available for Nginx >= 1.7
    #access_log              /var/log/nginx/localhost.bots.log main flush=5m buffer=32k if=$is_bot;
    #access_log off;
     # Log humans?
    # "if=" is available for Nginx >= 1.7
    access_log              /nginx/logs/localhost.access.log;
     # Error logging
    error_log               /nginx/logs/localhost.error.log error;
    log_not_found   on;
     # Static requests limiting
    #limit_req               zone=reqPerSec20 burst=100 nodelay;
    #limit_conn              conPerIp 20;
     # Seconds to wait for backend to generate a page
    fastcgi_read_timeout    15;
     # Default location /
    location /
    {
        #try_files $uri $uri/ /index.php?/$args;
        try_files   $uri $uri/ @php;
        # rewrite www.example.com → example.com
        if ($host ~* ^www\.(.*)$) {
        	set $host_without_www $1;
            rewrite ^/(.*)$ $scheme://$host_without_www/$1 permanent;
        }
        if ($fastcgi_script_name ~ "-d") {
            return 403;
        }
        if ($fastcgi_script_name ~ "-f") {
            return 403;
        }
         # removes trailing "index" from all controllers
        if ($request_uri ~* index/?$)
        {
            rewrite ^/(.*)/index/?$ /$1 permanent;
        }
         if (!-e $request_filename)
        {
            rewrite ^(.+)$ /index.php?$1 last;
            #break;
        }
         # removes trailing slashes (prevents SEO duplicate content issues)
        if (!-d $request_filename)
        {
            rewrite ^/(.*)/$ /$1 permanent;
            rewrite  ^(.*)$  /index.php?/$1  last;
            break;
        }
    }
     # Handle static files
    # H5BP Directives
    include                  nginx-bp/h5bp/location/expires.conf;
    include                  nginx-bp/h5bp/location/cross-domain-fonts.conf;
    include                  nginx-bp/h5bp/location/cache-busting.conf;
    include                  nginx-bp/h5bp/directive-only/cross-domain-insecure.conf;
    include                  nginx-bp/h5bp/directive-only/no-transform.conf;
    #include                 nginx-bp/h5bp/directive-only/spdy.conf; ssl needed. :-/
    include                  nginx-bp/h5bp/directive-only/x-ua-compatible.conf;
      autoindex off;
     location ~ \.php$
    {
        try_files $uri =404;
        include fastcgi_params;
        fastcgi_pass    127.0.0.1:9000;
        fastcgi_index   index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

Comments