मैंने अपने मुख्य वेब सर्वर के रूप में Nginx सेट अप किया है और इसके पीछे दो मोचीवेब आधारित सर्वर हैं। कुछ अनुरोध इन दो सर्वरों के विपरीत हैं। अब, मैं nginx का उपयोग कर phpmyadmin (/ var/www/nginx-default/phpMyAdmin पर स्थित) तक पहुंच बनाना चाहता हूं, लेकिन यह कहता है कि त्रुटि 404 नहीं मिली है। क्या में यहां कुछ भूल रहा हूँ?Nginx स्थान निर्देश काम नहीं कर रहा प्रतीत होता है। क्या मैं कुछ भूल रहा हूँ?
server {
############### General Settings ####################
listen 80;
server_name localhost;
access_log /home/me/dev/wwwaccess.log;
############## Document Root #######################
location/{
root /home/me/dev;
index index.html index.htm index.php;
}
############## PHPMyAdmin #######################
location /phpmyadmin {
root /var/www/nginx-default/phpMyAdmin;
index index.html index.htm index.php;
}
############## Proxy Settings for FastCGI Server #####
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/me/dev$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
############# Proxy Settings for Mochi1 ###############
location /mochi1 {
proxy_pass http://127.0.0.1:8000;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 3600;
proxy_buffering off;
}
############# Proxy Settings for Mochi2 ###############
location /mochi2 {
proxy_pass http://127.0.0.1:8001;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 3600;
proxy_buffering off;
}
############# Error redirection pages ################
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /home/me/dev;
}
}
उत्तर के लिए धन्यवाद! मैंने इसे लंबे समय से आजमाया लेकिन यह फिर कभी काम नहीं किया। मुझे हमेशा HTTP 404 त्रुटियां मिलीं। केवल अब मुझे समस्या का पता चला। मेरे पास phpmyadmin फ़ाइलें/var/www/nginx-default/phpmyadmin के अंतर्गत थीं। जब nginx php फ़ाइल के लिए निर्देश को संसाधित करता है, तो यह अनुरोध से एक/ph /my/www/nginx-default/phpmyadmin/phpmyadmin दूसरे phpmyadmin के अंदर खोज करता है। यह रूट निर्देशिका से है, यह सापेक्ष निर्देशिका की खोज करता है जो फिर phpmyadmin है। इसलिए मुझे phpmyadmin के अंदर एक और निर्देशिका बनाना पड़ा और वहां सभी फाइलें रखीं। अब यह काम कर रहा है! – ErJab
+1 मैंने अपने nginx.conf के साथ समस्या को हल करने के लिए पिछले 2 घंटों को जला दिया और आखिरकार यहां समाप्त हो गया ... मैं nginx के लिए नया हूं और चीजों को ठीक करने के लिए यह बहुत निराशाजनक है ... – dlamotte
ग्रेट जवाब। मुझे एहसास नहीं हुआ कि Nginx हमेशा एक ही स्थान चुनता है, भले ही एक से अधिक मैचों। मुझे यह मानना है कि यह दस्तावेज़ीकरण में स्पष्ट रूप से बताया गया था। –