server
{
listen       80;
server_name www.bzbw.net;
index index.html index.htm index.php;
root  /home/www/bzbw/blog;
location / {        if (-f $request_filename/index.html){
                rewrite (.*) $1/index.html break;
        }
        if (-f $request_filename/index.php){
                rewrite (.*) $1/index.php;
        }
        if (!-f $request_filename){
                rewrite (.*) /index.php;
        }}
                location ~ .*\.(php|php5)?$
{
fastcgi_pass  unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fcgi.conf;
} location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires      30d;
} location ~ .*\.(js|css)?$
{
expires      12h;
} log_format  www.bzbw.net  '$remote_addr - $remote_user [$time_local] $request '
             '$status $body_bytes_sent $http_referer '
             '$http_user_agent $http_x_forwarded_for';
access_log  www.bzbw.net.log  www.bzbw.net;
}这个是配置文件
已经Google了配置文件,但是还是具体的文章页还是404错误

解决方案 »

  1.   


    the answer is very interestingi haven`t the Nginx to checking, nothing to say.
      

  2.   

    you can lookhttps://calomel.org/nginx.html
      

  3.   

    # user and group to run as
    user  ez ez;# number of nginx workers
    worker_processes  6;# pid of nginx master process
    pid /var/run/nginx.pid;# Number of worker connections. 1024 is a good default
    events {
      worker_connections 1024;
    }# start the http module where we config http access.
    http {
      # pull in mime-types. You can break out your config 
      # into as many include's as you want to make it cleaner
      include /etc/nginx/mime.types;  # set a default type for the rare situation that
      # nothing matches from the mimie-type include
      default_type  application/octet-stream;  # configure log format
      log_format main '$remote_addr - $remote_user [$time_local] '
                      '"$request" $status  $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';  # main access log
      access_log  /var/log/nginx_access.log  main;  # main error log
      error_log  /var/log/nginx_error.log debug;  # no sendfile on OSX
      sendfile on;  # These are good default values.
      tcp_nopush        on;
      tcp_nodelay       off;
      # output compression saves bandwidth 
      gzip            on;
      gzip_http_version 1.0;
      gzip_comp_level 2;
      gzip_proxied any;
      gzip_types      text/plain text/html text/css application/x-javascript text/xml application/xml 
    application/xml+rss text/javascript;
      # this is where you define your mongrel clusters. 
      # you need one of these blocks for each cluster
      # and each one needs its own name to refer to it later.
      upstream mongrel {
        server 127.0.0.1:5000;
        server 127.0.0.1:5001;
        server 127.0.0.1:5002;
      }
      # the server directive is nginx's virtual host directive.
      server {
        # port to listen on. Can also be set to an IP:PORT
        listen 80;
        
        # Set the max size for file uploads to 50Mb
        client_max_body_size 50M;    # sets the domain[s] that this vhost server requests for
        # server_name www.[engineyard].com [engineyard].com;    # doc root
        root /data/ez/current/public;    # vhost specific access log
        access_log  /var/log/nginx.vhost.access.log  main;    # this rewrites all the requests to the maintenance.html
        # page if it exists in the doc root. This is for capistrano's
        # disable web task
        if (-f $document_root/system/maintenance.html) {
          rewrite  ^(.*)$  /system/maintenance.html last;
          break;
        }    location / {
          # needed to forward user's IP address to rails
          proxy_set_header  X-Real-IP  $remote_addr;      # needed for HTTPS
          proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header Host $http_host;
          proxy_redirect false;
          proxy_max_temp_file_size 0;
          
          # If the file exists as a static file serve it directly without
          # running all the other rewite tests on it
          if (-f $request_filename) { 
            break; 
          }      # check for index.html for directory index
          # if its there on the filesystem then rewite 
          # the url to add /index.html to the end of it
          # and then break to send it to the next config rules.
          if (-f $request_filename/index.html) {
            rewrite (.*) $1/index.html break;
          }      # this is the meat of the rails page caching config
          # it adds .html to the end of the url and then checks
          # the filesystem for that file. If it exists, then we
          # rewite the url to have explicit .html on the end 
          # and then send it on its way to the next config rule.
          # if there is no file on the fs then it sets all the 
          # necessary headers and proxies to our upstream mongrels
          if (-f $request_filename.html) {
            rewrite (.*) $1.html break;
          }      if (!-f $request_filename) {
            proxy_pass http://mongrel;
            break;
          }
        }    error_page   500 502 503 504  /500.html;
        location = /500.html {
          root   /data/ez/current/public;
        }
      }  # This server is setup for ssl. Uncomment if 
      # you are using ssl as well as port 80.
      server {
        # port to listen on. Can also be set to an IP:PORT
        listen 443;
        
        # Set the max size for file uploads to 50Mb
        client_max_body_size 50M;    # sets the domain[s] that this vhost server requests for
        # server_name www.[engineyard].com [engineyard].com;    # doc root
        root /data/ez/current/public;    # vhost specific access log
        access_log  /var/log/nginx.vhost.access.log  main;    # this rewrites all the requests to the maintenance.html
        # page if it exists in the doc root. This is for capistrano's
        # disable web task
        if (-f $document_root/system/maintenance.html) {
          rewrite  ^(.*)$  /system/maintenance.html last;
          break;
        }    location / {
          # needed to forward user's IP address to rails
          proxy_set_header  X-Real-IP  $remote_addr;      # needed for HTTPS
          proxy_set_header X_FORWARDED_PROTO https;      proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header Host $http_host;
          proxy_redirect false;
          proxy_max_temp_file_size 0;
          
          # If the file exists as a static file serve it directly without
          # running all the other rewite tests on it
          if (-f $request_filename) { 
            break; 
          }      # check for index.html for directory index
          # if its there on the filesystem then rewite 
          # the url to add /index.html to the end of it
          # and then break to send it to the next config rules.
          if (-f $request_filename/index.html) {
            rewrite (.*) $1/index.html break;
          }      # this is the meat of the rails page caching config
          # it adds .html to the end of the url and then checks
          # the filesystem for that file. If it exists, then we
          # rewite the url to have explicit .html on the end 
          # and then send it on its way to the next config rule.
          # if there is no file on the fs then it sets all the 
          # necessary headers and proxies to our upstream mongrels
          if (-f $request_filename.html) {
            rewrite (.*) $1.html break;
          }      if (!-f $request_filename) {
            proxy_pass http://mongrel;
            break;
          }
        }    error_page   500 502 503 504  /500.html;
        location = /500.html {
          root   /data/ez/current/public;
        }
      }
    }
      

  4.   

    location / {        if (-f $request_filename/index.html){
                    rewrite (.*) $1/index.html break;
            }
            if (-f $request_filename/index.php){
                    rewrite (.*) $1/index.php;
            }
            if (!-f $request_filename){
                    rewrite (.*) /index.php;
            }}这个就是wordpress的rewrite  
    我配置了之后 
     之前的是http://www.bzbw.net/?p=200   
     http://www.bzbw.net/200.html这样就是404 ,找不到页面了
      

  5.   

    应该是把调用页面也指向别的地方了,我去下个wordpress看看
      

  6.   

    oh, i found the question that is too late, my system have some problem to not test the nginx 
    that let me spend more time to make mistake.