मैंने वास्तव में इस रीडायरेक्ट (301) पर ध्यान नहीं दिया है, जब अंत में इस तरह के स्लैश ("/") के बिना एक यूआरएल का अनुरोध किया जाता है: http://server/directory
सर्वर 301 रीडायरेक्ट परमानेंट हैडर के साथ लोकेशन हेडर के साथ रिस्पॉन्ड करेगा http://server/directory/
।
देखिये इसका जीता जागता उदाहरण:
उपयोगकर्ता अनुरोध:
GET /social HTTP/1.1
( http://192.168.1.111/social )
अपाचे सर्वर प्रतिक्रिया:
HTTP/1.1 301 Moved Permanently
Location: http://192.168.1.111/social/
उपयोगकर्ता अनुरोध:
GET /social/ HTTP/1.1
( http://192.168.1.111/social/ )
अपाचे सर्वर प्रतिक्रिया:
HTTP/1.1 200 OK
Apache access.log:
192.168.1.130 - - [05/Apr/2014:22:06:47 +0200] "GET /social HTTP/1.1" 301 558 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:27.0) Gecko/20100101 Firefox/27.0"
-
192.168.1.130 - - [05/Apr/2014:22:06:47 +0200] "GET /social/ HTTP/1.1" 200 942 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:27.0) Gecko/20100101 Firefox/27.0"
/ सामाजिक / निर्देशिका में एक index.html
फ़ाइल शामिल है।
अपाचे सॉफ्टवेयर: Apache/2.2.22 (Ubuntu)
निर्देशिका विकल्प:Options Indexes FollowSymLinks MultiViews
तो, मेरा सवाल है: अपाचे ऐसा क्यों कर रहा है? और रीडायरेक्ट को कैसे रोकें और index.html
सीधे बाहर भेजें ? ग्राहकों को दो अनुरोध भेजने होते हैं जो वास्तव में अनावश्यक है। और हो सकता है कि कुछ क्लाइंट Redirects की अनुमति न दें और अंत स्लैश ("/") के बिना साइट पर नहीं जा पाएंगे।
मैं अनुप्रेषित को अक्षम नहीं करना चाहता। मैं सर्वर को बिना किसी रीडायरेक्ट के सीधे प्रतिक्रिया भेजने के लिए तैयार नहीं करता। निवेदन करने पर भी /social
।
क्या अपाचे को उन अनुरोधों को पुनर्निर्देशित करने के लिए डिज़ाइन किया गया है? सर्वर सिर्फ पुनर्निर्देशन के बिना डेटा भेज सकता है, है ना? क्या मुझे mod_rewrite
इसे रोकने के लिए उपयोग करना चाहिए ? या एक और विन्यास? या मैं बस इसे ऐसे ही रहने दूं और सभी html लिंक के अंत में एक स्लैश जोड़ दूं और कुछ रीडायरेक्ट के साथ रहूं?
आप लोग क्या सोचते हैं?
index.html
बिना रीडायरेक्ट के आउटपुट देना
/social
। (इसके अलावा, सामान्य तौर पर, कई यूट्रल्स में समान सामग्री परोसना आम तौर पर वांछित नहीं होता है।)
/social
आपके उदाहरण के लिए 404 के साथ जवाब देना होगा ।