nginx 静态网站配置

/**************************************************************************************
 *                               nginx 静态网站配置
 * 说明:
 *     配置下面的配置中包括python、php、静态网站的配置,配置静态网站主要目的是为了以后
 * 能够跑Markdown生成的静态网站。
 *                 
 *                                                  2016-8-7 深圳 南山平山村 曾剑锋
 *************************************************************************************/

一、参考文档:
    阿里云 ECS 使用心得5:nginx 静态网站配置
        http://frontenddev.org/article/ali-cloud-ecs-usage-insight-5-nginx-static-site-configuration.html

二、nginx配置:    
    root@aplex:/etc/nginx# ls
    conf.d          koi-utf  mime.types        naxsi.rules          nginx.conf    scgi_params      sites-enabled  win-utf
    fastcgi_params  koi-win  naxsi_core.rules  naxsi-ui.conf.1.4.1  proxy_params  sites-available  uwsgi_params
    root@aplex:/etc/nginx# cat sites-available/default
    # You may add here your
    # server {
    #   ...
    # }
    # statements for each of your virtual hosts to this file
    
    ##
    # You should look at the following URL's in order to grasp a solid understanding
    # of Nginx configuration files in order to fully unleash the power of Nginx.
    # http://wiki.nginx.org/Pitfalls
    # http://wiki.nginx.org/QuickStart
    # http://wiki.nginx.org/Configuration
    #
    # Generally, you will want to move this file somewhere, and start with a clean
    # file but keep this around for reference. Or just disable in sites-enabled.
    #
    # Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
    ##
    
    server {
        listen 80 default_server;
        listen [::]:80 default_server ipv6only=on;
    
        root /home/aplex/website/mysite;
        index index.html index.htm;
    
        # Make site accessible from http://localhost/
        server_name localhost;
    
        location / {
            # First attempt to serve request as file, then
            # as directory, then fall back to displaying a 404.
            # try_files $uri $uri/ =404;
            include  uwsgi_params;
                    uwsgi_pass  127.0.0.1:9091;              #必须和uwsgi中的设置一致
            # Uncomment to enable naxsi on this location
            # include /etc/nginx/naxsi.rules
        }
    
        # Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
        #location /RequestDenied {
        #   proxy_pass http://127.0.0.1:8080;    
        #}
    
        #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 /usr/share/nginx/html;
        #}
    
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #   fastcgi_split_path_info ^(.+\.php)(/.+)$;
        #   # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
        #
        #   # With php5-cgi alone:
        #   fastcgi_pass 127.0.0.1:9000;
        #   # With php5-fpm:
        #   fastcgi_pass unix:/var/run/php5-fpm.sock;
        #   fastcgi_index index.php;
        #   include fastcgi_params;
        #}
    
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #   deny all;
        #}
    }
    
    
    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #   listen 8000;
    #   listen somename:8080;
    #   server_name somename alias another.alias;
    #   root html;
    #   index index.html index.htm;
    #
    #   location / {
    #       try_files $uri $uri/ =404;
    #   }
    #}
    
    
    # HTTPS server
    #
    #server {
    #   listen 443;
    #   server_name localhost;
    #
    #   root html;
    #   index index.html index.htm;
    #
    #   ssl on;
    #   ssl_certificate cert.pem;
    #   ssl_certificate_key cert.key;
    #
    #   ssl_session_timeout 5m;
    #
    #   ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
    #   ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
    #   ssl_prefer_server_ciphers on;
    #
    #   location / {
    #       try_files $uri $uri/ =404;
    #   }
    #}
    
    server {
        listen 8000 default_server;
        listen [::]:8000 default_server ipv6only=on;
    
        root /home/aplex/website/phpsite;
        index index.html index.htm index.php;
    
        # Make site accessible from http://localhost/
        server_name localhost;
    
        # location / {
        #   # First attempt to serve request as file, then
        #   # as directory, then fall back to displaying a 404.
        #   # try_files $uri $uri/ =404;
        #   # include  uwsgi_params;
            #       # uwsgi_pass  127.0.0.1:9091;              #必须和uwsgi中的设置一致
        #   # Uncomment to enable naxsi on this location
        #   # include /etc/nginx/naxsi.rules
        # }
    
        # Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
        #location /RequestDenied {
        #   proxy_pass http://127.0.0.1:8080;    
        #}
    
        #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 /usr/share/nginx/html;
        #}
    
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
        #   # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
        #
        #   # With php5-cgi alone:
        #   fastcgi_pass 127.0.0.1:9000;
        #   # With php5-fpm:
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_index index.php;
            include fastcgi_params;
        }
    
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #   deny all;
        #}
    }
    
    server {
        listen 8080 default_server;
        listen [::]:8080 default_server ipv6only=on;
    
        root /home/aplex/website/site;
        index index.html index.htm index.php;
    
        # Make site accessible from http://localhost/
        server_name localhost;
    
    
    }
    root@aplex:/etc/nginx# 

三、效果如图:

 nginx 静态网站配置

上一篇:《Cacti实战》——3.2 存储流程


下一篇:nginx配置静态文件过期时间