फ़ाइल नाम + nginx + php = 404 में विशेष वर्ण


2

हाल ही में मैं पुराने सर्वर के मरने के बाद एक नए सर्वर में चला गया। मेरे पास वर्डप्रेस इंस्टॉलेशन था, जो अपाचे 2 और जेंटू लिनक्स द्वारा संचालित था। चलते समय, मैंने इसके बजाय नंगेक्स और डेबियन का उपयोग करने का फैसला किया । मैं काम करने के लिए अपने वर्डप्रेस को वापस लाया और सब कुछ ठीक होगा अगर एक छोटे के लिए नहीं ...

मुसीबत

फ़ाइल नाम में विशेष वर्ण वाले चित्र लोड नहीं होते हैं, मुझे 404 मिलते हैं । उदाहरण के लिए जब अनुरोध

http://my_site/wp-content/uploads/2013/05/Zajęcia-dla-dorosłych-z-bollywood-dance.jpg

WordPress जवाब देता है

You tried going to http://my_site/wp-content/uploads/2013/05/Zaj%C4%99cia-dla-doros%C5%82ych-z-bollywood-dance.jpg, and it doesn't exist.

मैंने टर्मिनल के साथ थोड़ी देर खेला और पता चला कि सर्वर पर छवि फ़ाइल नाम वर्डप्रेस द्वारा अनुरोधित लोगों से थोड़ा अलग है। भले ही वे पहचान में दिखते हैं, विशेष चरित्र अनुक्रम एक अलग तरीके से एन्कोड किए गए हैं। उदाहरण के लिए, जब मैं Zajęcia-dla-dorosłych-z-bollywood-dance.jpgटर्मिनल से फ़ाइल नाम की प्रतिलिपि बनाता हूं तो यह इनकोडेड होता है Zajęcia-dla-dorosłych-z-bollywood-dance.jpg। दूसरी ओर, वर्डप्रेस फाइल की तलाश में है Zajęcia-dla-dorosłych-z-bollywood-dance.jpgजो मौजूद नहीं है, निश्चित रूप से।

दोनों सिस्टम (पुराने Gentoo और वर्तमान डेबियन) UTF-8-आधारित लोकल का उपयोग करने के लिए सेट किए गए हैं।

कैसे हल करें?

मैं तीन संभावित कारणों के बारे में सोचता हूं:

  • डेबियन गेंटू की तुलना में अलग-अलग तरह से फिल्नाम में विशेष पात्रों को संग्रहीत करती है
  • मेरे नए mysql विशेष पात्रों को पुराने वाले की तुलना में अलग स्टोर करते हैं
  • nginx अपाचे की तुलना में अलग तरह से विशेष पात्रों को संभालता है

किसी भी सुझाव कैसे उन परिकल्पना और गलत तरीके से हल करने के लिए, समस्या का समाधान?

जवाबों:


1

ठीक है, मैंने एक स्क्रिप्ट के साथ फ़ाइल नाम को सही करके समस्या को हल किया । मुझे लगता है कि विशेष वर्णों का एन्कोडिंग किसी बिंदु पर टूट गया था जब मैं सिस्टम (जेंटू => मैक ओएस एक्स => डेबियन) के बीच फाइलों की नकल कर रहा था। मेरी स्क्रिप्ट का उपयोग करने और उसे संपादित करने के लिए स्वतंत्र महसूस करें, यह आपको समान समस्या है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.