nginx পুনর্লিখন বা অভ্যন্তরীণ পুনঃনির্দেশ চক্র


13

আমি কোনও টেবিলের বিরুদ্ধে মাথা ঘুরিয়ে দেখছি যখন আমার এনজিএনএক্স কনফিগারেশনে পুনর্নির্দেশচক্রটি কী ঘটছে যা ইউআরএল অ্যাক্সেস করার চেষ্টা করছে না যা কনফিগারেশনটি অ্যাক্সেস করার চেষ্টা করছে না তা নীচে চলেছে:

server {
        listen       127.0.0.1:8080;
        server_name  .somedomain.com;
    root  /var/www/somedomain.com;

        access_log /var/log/nginx/somedomain.com-access.nginx.log;
    error_log  /var/log/nginx/somedomain.com-error.nginx.log debug;

        location ~* \.php.$ {
        # Proxy all requests with an URI ending with .php*
        # (includes PHP, PHP3, PHP4, PHP5...)
        include /etc/nginx/fastcgi.conf;
        }

        # all other files
        location / {
            root  /var/www/somedomain.com;
        try_files $uri $uri/ ;
        }

    error_page 404 /errors/404.html;
        location /errors/ {
                alias /var/www/errors/;
        }       

        #this loads custom logging configuration which disables favicon error logging
        include /etc/nginx/drop.conf;
}

এই ডোমেনটি কিছু পরীক্ষার উদ্দেশ্যে কেবল একটি সাধারণ স্ট্যাটিক এইচটিএমএল সাইট। আমি আশা করছিলাম যে ত্রুটি_পৃষ্ঠার নির্দেশিকা পিএইচপি-এফপিএম প্রদত্ত ফাইলগুলি সন্ধান করতে সক্ষম না হওয়ায় প্রতিক্রিয়া জানিয়েছিল যেহেতু আমার কাছে ফাস্টসিজি_ইন্টারসেপ্ট_অরফারেন্স রয়েছে; HTTP ব্লক এবং নেভে ত্রুটি_পৃষ্ঠায় সেট আপ করা হয়েছে, তবে আমি অনুমান করছি অনুরোধটি অভ্যন্তরীণ পুনর্নির্দেশের কোথাও এর আগেও ব্যর্থ হয়। কোন সাহায্যের অনেক প্রশংসা হবে।


পুনর্নির্দেশের লুপের প্রতিবেদনকারী ক্লায়েন্ট ব্রাউজারটি নাকি এনগিনেক্স? যদি এটি ক্লায়েন্ট হয় তবে কোন অবস্থানে পুনঃনির্দেশিত হবে?
শেন ম্যাডেন

উভয়ই এটি রিপোর্ট করছে। ক্লায়েন্ট অবশেষে /erferences//erferences//erferences//erferences//erferences/...404.html
milosgajdos

এনগিনেক্স থেকে লগ এন্ট্রি দেখতে কেমন?
শেন ম্যাডেন

উত্তর:


11

অপরাধী হ'ল: try_files $uri $uri/ ;

http://nginx.org/r/try_files (নোট করুন যে শেষ প্যারামিটারটি অভ্যন্তরীণ পুনর্নির্দেশের জন্য রিটার্ন কোড বা ইউআরআই)

যদি ফাইলগুলির কোনওটি না পাওয়া যায়, তবে শেষ প্যারামিটার দ্বারা নির্দিষ্ট ইউরির অভ্যন্তরীণ পুনর্নির্দেশ করা হবে।


ধন্যবাদ। একটি রুটস ট্রেলিস এলইএমপি সেটআপ নিয়ে এই ত্রুটিগুলির একটি মাত্র ছিল। WooCommerce ডেটা আমদানির পরে ঘটেছিল। আগে কখনও ছিল না। এই ক্ষেত্রে আপনি কি সুপারিশ করবেন? পরামিতি সরান $uri/? প্যারামিটারটি এখানে দেখুন: github.com/roots/trellis/blob/…
rhand

2

অন্যরা যেমন বলেছে, এটিই অপরাধী:

    try_files $uri $uri/ ;

এটি একটি পুনঃনির্দেশ লুপ তৈরি করে, যেহেতু try_filesফাইলটি খুঁজে পাওয়া না গেলে তার শেষ প্যারামিটারটি সেই অবস্থানটিতে নির্দেশ করা উচিত। আমি এর =404মতো একটি যুক্ত করে এটি সমাধান করেছি :

    try_files $uri $uri/ =404 ;
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.