匪夷所思的request_filename為空值
匪夷所思的request_filename為空值
centos5
# /usr/local/nginxad/sbin/nginx -V
nginx version: nginx/1.2.1
built by gcc 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC)
TLS SNI support enabled
configure arguments: --user=www --group=www
--prefix=/usr/local/nginxad
--with-pcre=/usr/local/src/lemppackages/pcre-8.30
--with-http_stub_status_module
--with-http_ssl_module
--with-http_sub_module
--with-md5=/usr/lib
--with-sha1=/usr/lib
--with-http_gzip_static_module
--without-mail_pop3_module
--without-mail_imap_module
--without-mail_smtp_module
--add-module=/usr/local/src/agentzh-memc-nginx-module-4007350
--add-module=/usr/local/src/echo-nginx-module
虛擬主機的配置文件為
location / {
#root /usr/share/nginx/html;
root /data/wwwroot/lanops.sns.com;
index index.html index.htm index.php;
}
location ~ ^/testxxx/.+\.php$ {
alias /data/wwwroot/test1/test2/$1;
rewrite /testxxx/(.+\.php) /$1 break;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
# fastcgi_param SCRIPT_FILENAME /data/wwwroot/test1/test2$fastcgi_script_name;
include fastcgi_params;
echo_after_body "document_root: " $document_root;
echo_after_body "fastcgi_script_name: " $fastcgi_script_name;
echo_after_body "uri: " $uri;
echo_after_body "request_uri: " $request_uri;
echo_after_body "request_filename: " $request_filename;
echo_after_body "==========================";
}
location ~ \.php$ {
root /data/wwwroot/lanops.snsgame.com;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# curl http://lanops.snsgame.com/testxxx/t1.php
t1.php=============這個就是t1.php的內容。解析完全正確
document_root: /data/wwwroot/test1/test2/t1.php
fastcgi_script_name: /t1.php
uri: /t1.php
request_uri: /testxxx/t1.php
request_filename:
==========================
求問:為什麼request_filename為空。但是內容還能被解析出來呢?
難道 SCRIPT_FILENAME的值才是要訪問的實際文件么??
為什麼 document_root和fastcgi_script_name拼接出來的值居然是/data/wwwroot/test1/test2/t1.php??
《解決方案》
我在考慮,莫非是echo模塊和1.2.11不是很兼容?