fastcgi配置:php
location ~ \.php$ { #fastcgi_pass unix:///tmp/php-cgi.sock; fastcgi_pass unix__tmp_php5_cgi_sock; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; } 其实这里用include fastcgi.conf来就好了,fastcgi.conf有fastcgi_param的配置 location ~ \.php$ { #fastcgi_pass unix:///tmp/php-cgi.sock; fastcgi_pass unix__tmp_php5_cgi_sock; include fastcgi.conf; }
1.nginx.confnginx
2.mime.types: 文件扩展名与文件类型映射表,nginx根据映射关系,设置http请求响应头的 Content-Type 值。当在映射表找不到时,使用 nginx.conf 中 default-type 指定的默认值。 例如,默认配置中的指定的 default-type 为 application/octet-stream 。
include mime.types; default_type application/octet-stream;
默认下面截一段mime.types定义的文件扩展名与文件类型映射关系,完整的请自行查看: 3.fastcgi_params nginx配置Fastcgi解析时会调用 fastcgi_params 配置文件来传递服务器变量,这样CGI中能够获取到这些变量的值。默认传递如下变量: 4.fastcgi.conf 对比下fastcgi.conf与fastcgi_params文件,能够看出只有如下差别: 即fastcgi.conf只比fastcgi_params多了一行“fastcgi_param SCRIPT_FILENAME $document_root $fastcgi_script_name;” 本来只有fastcgi_params文件,fastcgi.conf是nginx 0.8.30 (released: 15th of December 2009)才引入的。主要为是解决如下问题(参考:http://www.dwz.cn/x3GIJ): 本来Nginx只有fastcgi_params,后来发现不少人在定义SCRIPT_FILENAME时使用了硬编码的方式。例如,fastcgi_param SCRIPT_FILENAME /var/www/foo$fastcgi_script_name。因而为了规范用法便引入了fastcgi.conf。 不过这样的话就产生一个疑问:为何必定要引入一个新的配置文件,而不是修改旧的配置文件?这是由于 fastcgi_param 指令是数组型的,和普通指令相同的是:内层替换外层;和普通指令不一样的是:当在同级屡次使用的时候,是新增而不是替换。换句话说,若是在同级定义两次 SCRIPT_FILENAME,那么它们都会被发送到后端,这可能会致使一些潜在的问题,为了不此类状况,便引入了一个新的配置文件所以再也不建议你们使用如下方式(搜了一下,网上大量的文章,而且nginx.conf的默认配置也是使用这种方式): fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params; 而使用最新的方式: include fastcgi.conf; 5. uwsgi_params 与 fastcgi_params 同样,传递哪些服务器变量,只有前缀不同,以 uwsgi_param 开始而非 fastcgi_param。 6. scgi_params 与 fastcgi_params 同样,传递哪些服务器变量,只有前缀不同,以 scgi_param 开始而非 fastcgi_param。
7. koi-utf、koi-win、win-utf 这三个文件都是与编码转换映射文件,用于在输出内容到客户端时,将一种编码转换到另外一种编码。 koi-win: charset_map koi8-r < -- > windows-1251 koi-utf: charset_map koi8-r < -- > utf-8 win-utf: charset_map windows-1251 < -- > utf-8 koi8-r 是斯拉夫文字8位元编码,供俄语及保加利亚语使用。在Unicode未流行以前,KOI8-R 是最为普遍使用的俄语编码,使用率甚至起ISO/IEC 8859-5还高。 这3个文件存在是由于做者是俄国人的缘由。