nginx中path模式配置示例
nginx服务器默认是不支持pathinfo模式的,即类似index.php/index形式的url会提示404。在这里,需要对nginx配置文件中需要开启pathinfo模式的server予以修改配置,修改nginx.conf文件如下:
server{ server_name blog.com; listen 80; root /home/wwwroot/blog; index index.phpindex.htmlindex.htm; access_log /data/log/blog.access.log; error_log /data/log/blog.error.log;
location/{ indexindex.php; if(!-e$request_filename){ rewrite^/(.*)$ /index.php/$1 last; break; } }
location~\.php{ #fastcgi_pass 127.0.0.1:9000; fastcgi_passunix:/dev/shm/php-cgi.sock; fastcgi_indexindex.php; #fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name; include fastcgi.conf; include fcgi_pathinfo.conf; set $real_script_name$fastcgi_script_name; if($fastcgi_script_name~"^(.+?\.php)(/.+)$"){ set$real_script_name$1; set$path_info $2; } fastcgi_paramSCRIPT_FILENAME$document_root$real_script_name; fastcgi_paramSCRIPT_NAME$real_script_name; fastcgi_paramPATH_INFO$path_info; } location~.*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)${ expires30d; }
location~.*\.(js|css)?${ expires7d; }
error_page404 /404.html; error_page 500502503504 /50x.html; location=/50x.html{ root/home/wwwroot/; } }