मैंने nginx को हाल ही में 1.2.2 संस्करण में अद्यतन किया और निम्नलिखित प्रविष्टि टूटी हुई लगती है; संभवतः संस्करणों के बीच वाक्य रचना में बदलाव?
location / {
# First attempt to serve request as file, then
# as directory, then fall back to index.html
try_files $uri /index.html;
}
जब मैं http://www.mysite.com/a-non-existent-url पर ब्राउज़र करता हूं तो मुझे "500 आंतरिक सर्वर त्रुटि" त्रुटि पृष्ठ पर पुनः निर्देशित किया जाता है। निम्नलिखित लॉग प्रविष्टि बनाई गई है;
2012/08/13 09:20:29 [error] 18457#0: *60 rewrite or internal redirection cycle
while internally redirecting to "/index.html", client: 10.0.14.1, server:
mysite.com, request: "GET /a-non-existent-url HTTP/1.1", host: "www.mysite.com"
यह अपेक्षा के अनुसार काम करता था, मुझे इस संस्करण के लिए सही वाक्यविन्यास नहीं मिल रहा है। अब यह कैसा होना चाहिए?
अनुरोध के रूप में अद्यतन पूर्ण विन्यास;
server {
root /usr/share/nginx/mysite.com/public_html;
index index.php index.html index.htm;
server_name mysite.com www.mysite.com;
access_log /usr/share/nginx/mysite.com/logs/access_log;
error_log /usr/share/nginx/mysite.com/logs/error_log;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to index.html
try_files $uri $uri/ /index.html;
}
#Added for awstats
location ^~ /awstats-icon {
alias /usr/share/awstats/icon/;
access_log off;
}
#Added for awstats
location ^~ /awstatscss {
alias /usr/share/doc/awstats/examples/css/;
access_log off;
}
#Added for awstats
location ^~ /awstatsclasses {
alias /usr/share/doc/awstats/examples/classes/;
access_log off;
}
#Added for awstats
# Configure /cgi-bin/scripts to go through php-fastcgi
location ~ ^/cgi-bin/.*\.(cgi|pl|py|rb) {
gzip off;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index cgi-bin.php;
fastcgi_param SCRIPT_FILENAME /etc/nginx/cgi-bin.php;
fastcgi_param SCRIPT_NAME /cgi-bin/cgi-bin.php;
fastcgi_param X_SCRIPT_FILENAME /usr/lib$fastcgi_script_name;
fastcgi_param X_SCRIPT_NAME $fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
fastcgi_param REMOTE_USER $remote_user;
}
#Make sure all PHP is process by php-fpm
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}
#rTorrent/wTorrent needs this
#To loop back to the xml rpc service
location /RPC2 {
scgi_pass 127.0.0.1:5000;
include scgi_params;
scgi_param SCRIPT_NAME /RPC2;
}
}
दूसरा अद्यतन
एक डीबग लॉग यहां पोस्ट किया गया है ( http://pastebin.com/raw.php?i=PtLwvQhW )। इसकी काफी लंबी है इसलिए मैंने इस पोस्ट को स्पैम करने से बचने के लिए ऐसा किया है।
debug
के अंत तक error_log
लाइन, फिर से कोशिश करते हैं और यहाँ पोस्ट त्रुटि लॉग।
ls -l /usr/share/nginx/mysite.com/public_html/index.html
?