nginx:виртуальные_хосты

Default + fast.cgi

# You may add here your
# server {
#       ...
# }
# statements for each of your virtual hosts

server {
        listen   80 default;
        server_name  localhost;

        access_log  /var/log/nginx/localhost.access.log;
        #error_log  /var/log/nginx/localhost.error.log debug;
        error_log  /var/log/nginx/localhost.error.log error;
        index index.php index.html;
        root   /var/www/nginx-default;

        location / {
                root   /var/www/nginx-default;
        }

        location /doc {
                root   /usr/share;
                autoindex on;
                allow 127.0.0.1;
                deny all;
        }

        #location /images {
        #       root   /usr/share;
        #       autoindex on;
        #}

        #location /myadmin {
        #        root /usr/share/phpmyadmin;
        #        index index.php;
        #}

        #location ~ /myadmin/*\.php$ {
        #        fastcgi_pass   127.0.0.1:9000;
        #        fastcgi_index  index.php;
        #        include /etc/nginx/fastcgi_params;
        #        fastcgi_param  SCRIPT_FILENAME  /usr/share/phpmyadmin$fastcgi_script_name;
        #}


        #error_page  404  /404.html;

        # redirect server error pages to the static page /50x.html
        #
        #error_page   500 502 503 504  /50x.html;
        #location = /50x.html {
        #       root   /var/www/nginx-default;
        #}

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
                #proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {

                include /etc/nginx/fastcgi_params;
                fastcgi_pass 127.0.0.1:9000; #php-fpm listening on port 9000
                fastcgi_index index.php;
        }

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /\.ht {
                deny  all;
        }
}

Drupal 6 site

server {

   listen  80;
   server_name drupal_host.com www.drupal_host.com;
   root /var/www/nginx-sites/drupal_host.com/httpdocs;
   #index index.php index.html;

   access_log /var/log/nginx/drupal_host.com.access.log;
   error_log  /var/log/nginx/drupal_host.com.error.log error;

   location = /favicon.ico {
        log_not_found off;
        access_log off;
   }

   location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
   }

   location / {
        index index.php index.html;
        try_files $uri $uri/ @rewrite;
   }

   location @rewrite {
        # Some modules enforce no slash (/) at the end of the URL
        # Else this rewrite block wouldn't be needed (GlobalRedirect)
        rewrite ^(.*)$ /index.php?q=$1;
   }
  
   location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        try_files $uri @rewrite; #check for existence of php file
        fastcgi_pass 127.0.0.1:9000; #php-fpm listening on port 9000
        fastcgi_index index.php;
   }

   # Fighting with ImageCache? This little gem is amazing.
   location ~ ^/sites/.*/files/imagecache/ {
        try_files $uri $uri/ @rewrite;
   }

   location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
        expires max;
        log_not_found off;
   }

   location ~* \.(inc|log|info|module|install|profile|txt)$ {
        deny all;
   }

}

Drupal 7 site

fastcgi_param

fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;

fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
  • nginx/виртуальные_хосты.txt
  • Последнее изменение: 2012/02/16 04:38
  • (внешнее изменение)