2010-01-26 21 views
11

मै Magento 1.4 का उपयोग कर Magento 1.3 साइट का परीक्षण करने की प्रक्रिया में हूं। मैं बहुत अजीब और असंगत व्यवहार देख रहा हूं। इसके बजाय मेरी जावास्क्रिप्ट फ़ाइलों का URL सहित, Magento js फ़ाइलों का पूरा फाइल सिस्टम पथ के साथ टैग पैदा कर रही है, के रूप में इतना:Magento 1.4 क्यों फ़ाइल सिस्टम पथ द्वारा जावास्क्रिप्ट फ़ाइलों सहित है?

<script type="text/javascript" src="/home/my_username/public_html/js/prototype/prototype.js"></script> 

मेरा मानना ​​है कि इस नए "थीम्स जावास्क्रिप्ट और सीएसएस फ़ाइलों के लिए संयुक्त से संबंधित है एक फ़ाइल "समारोह। वास्तव में, जब मैं व्यवस्थापक में प्रवेश करें और क्लिक करें "फ्लश जावास्क्रिप्ट/सीएसएस कैश", तो पहले पेज लोड सफल होता है, और मैं एक ही जे एस शामिल समान करने के लिए देखें:

<script type="text/javascript" src="/media/js/5b8cfac152fcb2a5f93ef9571d338c54.js"></script> 

लेकिन बाद में उम्र भार लोड हर पूर्ण पथ नाम के साथ एकल जेएस फ़ाइल। जो स्पष्ट रूप से काम नहीं करेगा। किसी के पास कोई भी विचार है कि क्या गलत हो सकता है या इस समस्या को कैसे ठीक किया जाए?

+0

@Mattias Bomelin - मैं अभी तक इस का उत्तर नहीं मिला। जब मैं करता हूं, तो मैं इसे यहां एक उत्तर के रूप में पोस्ट करूंगा और इसे स्वीकार करूंगा। यदि आप इसका ट्रैक रखना चाहते हैं तो डाउनवोट तीर के नीचे स्टार पर क्लिक करके इस प्रश्न को पसंदीदा के रूप में चिह्नित करें। – Josh

उत्तर

9

सिस्टम -> कॉन्फ़िगरेशन -> डेवलपर सेटिंग्स -> जावास्क्रिप्ट सेटिंग्स -> जावास्क्रिप्ट फ़ाइलें (बीटा) मर्ज करें और इसे "नहीं" पर सेट करें। यह वास्तव में एक बीटा है: डी

+1

यह समस्या भी मेरे साथ 1.7.0.1 पर होती है ... अक्षम 'dev/js/merge_files' था मेरे लिए केवल समाधान – WonderLand

+1

यदि मर्ज जावास्क्रिप्ट को मर्ज करना और "नो" को सीएसएस मर्ज करना आपकी समस्या को हल करता है, तो अंतर्निहित समस्या शायद यह है कि आपकी var/निर्देशिका लिखने योग्य नहीं है। अनुमतियों और स्वामित्व की जांच करने का प्रयास करें। – Eric

+0

धन्यवाद :) मेरे लिए काम किया !!! मेरा मुद्दा था कि मैं संपादक "मीडिया स्टोरेज" में छवियों को देखने में सक्षम नहीं था, यहां तक ​​कि फ़ोल्डर बटन काम नहीं कर रहा था और फाइल ब्राउज़ कर रहा था और फ़ाइल बटन अपलोड नहीं किया गया था। –

0

कॉन्फ़िगरेशन में "वेब" के अंतर्गत विभिन्न बेस URL फ़ील्ड के मान क्या हैं?

{{unsecure_base_url}}skin/ 

आधार त्वचा URL के लिए कुछ होना चाहिए।

+0

हाँ, यही वह था। मैंने http://my.domain.name/ के साथ http://my.domain.name/ के साथ {{unsecure_base_url}} को बदलने का भी प्रयास किया है ... – Josh

0

समस्या जावास्क्रिप्ट विलय विकल्प से संबंधित है। दुर्भाग्य से फॉर्म जावास्क्रिप्ट के बिना काम नहीं करता है। आप 0.

 <js> 
      <merge_files>0</merge_files> 
      <deprecation>0</deprecation> 
     </js> 

करने के लिए एप्लिकेशन/कोड/कोर/दाना/कोर/etc/config.xml में merge_files विकल्प बदलने के लिए है कि मैं वर निर्देशिका में सभी कैश फ़ाइलें और सत्र फ़ाइलें निकाल के बाद की है।

8

config.xml को संपादित करने से मेरे लिए चाल नहीं हुई, मुझे इसे डेटाबेस में अक्षम करना पड़ा।

तालिका में 'core_config_data' पथ के साथ 'देव/js/merge_files' (config_id 772) के लिए '' पंक्ति का मूल्य निर्धारित किया है।

हालांकि मुझे सही दिशा में इंगित करने के लिए धन्यवाद!

8

मैं एक ही समस्या थी और निम्नलिखित समाधान के साथ आया था:

  1. सत्यापित करें कि पर मीडिया/js अनुमतियाँ एक ही उपयोगकर्ता Magento स्थापना के फ़ोल्डर है कि के हैं।
  2. व्यवस्थापक का उपयोग कर सीएसएस/जेएस कैश को साफ करें।

दोनों के संयोजन वास्तव में चीजों को सामान्य में वापस ले गए।

+0

यह एक साधारण अनुमति समस्या है, यद्यपि एक अजीब अभिव्यक्ति के साथ। सुनिश्चित करें कि आपका 'मीडिया' फ़ोल्डर वेब सर्वर उपयोगकर्ता/समूह (हालांकि आप इसे करना चाहते हैं) द्वारा लिखने योग्य है और सब कुछ अच्छी तरह से काम करेगा। – Nick

+0

कुछ मामलों में (जैसा कि मेरे में), हो सकता है कि आप व्यवस्थापक में भी शामिल न हों। मैंने निक की साइट पर सलाह दी (http://www.nicksays.co.uk/2010/03/magento-including-javascript-by-system-path/)। मुझे अस्थायी रूप से सेटिंग बदलने के लिए एक क्वेरी चलाने के लिए, फिर लॉग इन करें और कैश को खाली करें, और फिर मैंने सेटिंग को वापस बदल दिया (फिर से एक क्वेरी का उपयोग कर, क्योंकि mysql पहले से ही खुला था)। प्रश्न: अद्यतन core_config_data SET 'value' = 0 कहां 'पथ' =' dev/js/merge_files '; मुझे आश्चर्य है कि अगर var/cache/* को हटाना काम करेगा। –

1

config.xml को संपादित करने से मेरे लिए चाल नहीं हुई, मुझे इसे डेटाबेस में अक्षम करना पड़ा।

तालिका में core_config_data पथ dev/js/merge_files (config_id 772) to '0' के साथ पंक्ति का मान सेट करें।

हालांकि मुझे सही दिशा में इंगित करने के लिए धन्यवाद!

यह समाधान मेरे लिए काम किया है, धन्यवाद।

1

मुझे एक ही समस्या थी।

क्योंकि यह Magento जावास्क्रिप्ट फ़ाइल नहीं ढूंढ सकता है। अपने /var/log/exception.log को देखो (आप सिस्टम में लॉग सक्षम करने के लिए -> कॉन्फिग -> डेवलपर विकल्प)

मेरी लॉग में निम्न त्रुटि थी:

अपवाद 'अपवाद' संदेश के साथ 'चेतावनी: filemtime() [function.filemtime]:/var/www/js/calendar/lang/calendar-en.js/var/www/app/code/core/mage/core/helper/डेटा में स्टेट विफल .php लाइन 631 'में /var/www/app/code/core/Mage/Core/functions.php4545

इसलिए मैंने फ़ाइल और वॉयला बनाई है यह काम करता है!

0

Magento 1.4 में config_id 879 (मेरे लिए) इस मान को 0 पर सेट करने से मुझे मेरी सभी .js फ़ाइलों को वापस दिया गया। सुपर अजीब

4

जांचें कि क्या आपका मीडिया फ़ोल्डर उस उपयोगकर्ता द्वारा लिखा जा सकता है जिसे आप वेबसर्वर चलाते हैं। मैं एक फ़ोल्डर है कि केवल जड़ से लिखने योग्य

chown -R www-data:www-data media 

मदद की करने के लिए एक सिमलिंक था।

+0

यह मेरे लिए 1.8 –

11

यह मेरे मामले में अनुमतियां जारी थी। ये ssh Magento के रूट निर्देशिका में चलाने के आदेशों यह तय:

# chown all to proper user and group, ie. www-data 
    chown -R www-data:www-data * 
    # change all files permissions to 644 
    find . -type f -exec chmod 644 {} \; 
    # change all directories permissions to 755 
    find . -type d -exec chmod 755 {} \; 
    # change all to be writable in var and media directories 
    chmod -R 777 var/ media/ 

यह अभी भी तो काम नहीं करता है के लिए "0" "1" से MySQL में core_config_data में पथ स्तंभ के लिए इन दो मूल्यों को बदल:

  • देव/सीएसएस/merge_css_files
  • देव/js/merge_files
+0

पर काम करता है सर्वर को और मैग्नेटो कैश को साफ़ करें .. फिर क्या करें @marcinsdance कहता है ...हर चीज काम करेगी! बहुत बहुत धन्यवाद। –

+0

यह मेरे लिए ठीक था। धन्यवाद! – Anderscc

+0

अनुमति मुद्दे को ठीक करने का अच्छा तरीका ... मेरे लिए काम किया .... –