Magento 2 CSS और JavaScript सही फ़ोल्डर से लोड नहीं हो रहा है


35

मैं उम्मीद कर रहा हूं कि यहां कोई व्यक्ति मदद कर सकता है। मैं थोड़ी सफलता के साथ विंडोज 7 मशीन पर WAMP पर Magento 2 को स्थापित करने और चलाने का प्रयास कर रहा हूं।

साइट को लोड करने के लिए कई और विभिन्न हुप्स के माध्यम से कूदने के बाद मुझे अब 404 प्रतिक्रियाओं और शैलियों या जावास्क्रिप्ट लोडिंग का सामना करना पड़ रहा है।

कल्पना इस प्रकार है:

  • Magento-सीई-2.0.0 + नमूने
  • अपाचे 2.4.9
  • PHP 5.5.12
  • MySQL 5.6.17

जब मैं त्रुटियों के बीच ब्राउज़र कंसोल को देखता हूं, तो उन फ़ाइलों को एक्सेस करने का प्रयास होता है जो पब / स्टैटिक फ़ोल्डर में नहीं होती हैं। "फ्रंटएंड" फ़ोल्डर लोड हो जाता है और अधिकांश फाइलें मौजूद होती हैं। मैंने देखा है कि कुछ CSS फाइलें मौजूद नहीं हैं।

PHP की तैनाती कमांड चलाने पर

php bin/magento setup:static-content:deploy

अन्य पदों में उल्लेख किया गया है कि मुझे नीचे त्रुटि मिलती है। मुझे यकीन नहीं है कि यह कैसे उपाय है?

घातक त्रुटि: 134217728 बाइट्स की अनुमत मेमोरी का आकार समाप्त हो गया (64 बाइट्स आवंटित करने का प्रयास किया गया) C: \ wamp \ www \ magento \ seller \ oyejorge \ less.php \ lib \ Lesse Visitor.php लाइन 45 पर

कोई भी मदद काफी सराहनिय होगी।

अद्यतन करें

मैंने PHP मेमोरी भत्ता को टक्कर दी और फिर से php परिनियोजित स्क्रिप्ट को चलाया। इस बार यह त्रुटि नहीं हुई और पूरी तरह से निष्पादित हुई। हालाँकि ऊपर वर्णित वही मुद्दा अभी भी मौजूद है। साइट लोड होती है, लेकिन 404 पृष्ठ में किसी भी पृष्ठ या परिसंपत्ति के परिणाम को लोड करने के हर प्रयास को कोई स्टाइलिंग के साथ त्रुटि नहीं मिली।

कृपया Chrome इंस्पेक्टर की त्रुटियों के नीचे देखें

यहाँ छवि विवरण दर्ज करें


@TejabhagavanKollepara इस सवाल को पहले पूछा गया था, अच्छी तरह से बनाई गई है, के पास अच्छे उत्तर हैं, इसलिए IMO का दूसरा प्रश्न एक कठिन उम्मीदवार है, यह एक नहीं ... Btw, अगर दूसरे प्रश्न पर ध्वज को इस एक डुप्लिकेट के रूप में बदल दिया गया था , इसे प्राप्त करने के लिए प्रयास करने के लिए दूसरे के डुप्लिकेट के रूप में इस प्रश्न को चिह्नित करना आवश्यक नहीं है।
7ochem

SA का उत्तर देखें, भी - एक ताज़ा Magento इंस्टॉलेशन "डिफ़ॉल्ट" ("प्रोडक्शन") मोड में है और इसमें स्टैटिक कंटेंट की आवश्यकता नहीं है, जो कि आपको अन्य सभी उत्तरों में करने के लिए कहा जा रहा है।
जानिस एल्मरिस

जवाबों:


50

समाधान # 1 (यदि आप XML फ़ाइल को संपादित करना चाहते हैं)

मैं आपको magentocommerce.com/downloadनमूना डेटा के साथ Magento 2 ज़िप डाउनलोड करने , phpmyadmin में नई DB बनाने , htdocs फ़ोल्डर में ज़िप निकालने के लिए चाहूंगा । Magento 2 स्थापित करें, लेकिन स्टोर URL और व्यवस्थापक URL में 127.0.0.1 लोकलहोस्ट का उपयोग न करें । सफल स्थापना के बाद Magento चलाएं।

अब हम Magento 2 के कैश और सत्रों को हटाने / हटाने जा रहे हैं। निम्नलिखित रास्तों पर जाएं और सब कुछ हटा दें:

ROOT > var > cache > *DELETE ALL*
ROOT > var > page_cache > *DELETE ALL*
ROOT > var > session > *DELETE ALL*

जब Magento 2 उत्पादन मोड में नहीं है, तो यह स्थानीय सर्वर पर कुछ स्थैतिक संसाधनों के लिए सहानुभूति बनाने की कोशिश करेगा। हमें एडिट ROOT > app > etc > di.xmlफ़ाइल में जाकर Magento 2 के उस व्यवहार को बदलना होगा । di.xmlअपने पसंदीदा कोड संपादक में खोलें , virtualType name="developerMaterialization"अनुभाग ढूंढें। नीचे उस अनुभाग में, आपको एक आइटम मिलेगा <item name="view_preprocessed" xsi:type="object">जिसे संशोधित करने की आवश्यकता है। आप निम्न सामग्री को बदलकर इसे संशोधित कर सकते हैं:

Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink

सेवा मेरे:

Magento\Framework\App\View\Asset\MaterializationStrategy\Copy

अब अंतिम चरण, में उत्पन्न पुरानी फ़ाइलों को भी हटा दें ROOT > pub > static > DELETE ALL EXCEPT .HTACCESS

समाधान # 2

संगीतकार स्थापित करें। अब मैं आपसे Magento के 2 ज़िप डाउनलोड करने magentocommerce.com/download, phpmyadmin में नए db बनाने , hosocs फ़ोल्डर में ज़िप निकालने के लिए चाहूँगा । Magento 2 स्थापित करें, लेकिन स्टोर URL और व्यवस्थापक URL में 127.0.0.1 लोकलहोस्ट का उपयोग न करें । सफल स्थापना के बाद Magento चलाएं।

अब हम कम्पोज़र इंस्टॉलेशन को सत्यापित करने जा रहे हैं, स्टैटिक कंटेंट, क्लियर / फ्लश मैगेंटो कैश को डिपॉजिट करें और मैगेंटो 2 ब्लॉक को रिवाइंड करें। उपरोक्त सभी कार्य करने के लिए, RUN डायलॉग खोलने के लिए WINDOWS KEY + R दबाएँ और कमांड प्रॉम्प्ट खोलने के लिए "cmd" टाइप करें।

Magento 2 ROOT निर्देशिका में प्रवेश करने के लिए " cd PATH_TO_YOUR_MAGENTO2_FILES " टाइप करें।

अब उपरोक्त निर्देशिका में कम्पोज़र इंस्टॉलेशन को सत्यापित करने के लिए, " कंपोज़र इंस्टॉल " टाइप करें ।

यदि आपको इस चरण में कोई त्रुटि मिलती है, तो कृपया अपने कंपोज़र इंस्टॉलेशन की जाँच करें

इस चरण में, हम अपने Magento स्टोर पर तैनात करने के लिए स्थैतिक सामग्री सेट कर रहे हैं। इसे करने के लिए, टाइप करें " php bin / magento setup: static-content: तैनात "।

जो Magento 2.2.x पर हैं उनके लिए

php bin/magento setup:static-content:deploy -f

यदि आपको कोई त्रुटि मिलती है, तो अपने PHP.EXE और PHP.INI पर्यावरण चर की जाँच करें

CMD में " php bin / magento cache: flush " टाइप करके क्लियर / फ्लश मैगेंटो कैश ।

और अंत में, Reindex Magento स्टेटिक ब्लॉक " php bin / magento indexer: reindex " टाइप करें ।

आपको Magento 2 की सफल स्थापना के साथ किया जाता है।


4
इसके अलावा php.ini परिवर्तन में max_execution_time 500, के लिए memory_limit 2048M, को post_max_size 2048M के लिए, upload_max_filesize 2048M और करने के लिए max_file_uploads 2048 को
Fayyaz खट्टक

तुरंत जवाब के लिए धन्यवाद। मैंने ये बदलाव किए हैं लेकिन इनका कोई असर नहीं हुआ। मैंने परिवर्तन करने के बाद WAMP सर्वर को पुनः आरंभ किया। मैंने क्रोम इंस्पेक्टर में देखी जा सकने वाली त्रुटियों को दिखाने के लिए प्रश्न संपादित किया है

ओह, मुझे एक और बात का उल्लेख करने के लिए खेद है, पहले सभी कैश और सत्र हटाएं, di.xml में परिवर्तन करें और ROOT> pub> static> DELETE ALL EXCEPT .HTACCESS
Fayyaz

1
@ मेगनएक्सएक्स यह हर व्यक्ति का विचार है कि वह किस टूल का अधिक उपयोग करना पसंद करता है। आपकी नजर में, आप समाधान के बारे में अपना दृष्टिकोण साझा करने के बजाय हर चीज की आलोचना करते हैं।
फ़य्याज खट्टक

1
समाधान # 2 ने एक आकर्षण की तरह काम किया, इस दिन इस समस्या से निपटने के लिए मुझे घंटों नहीं, धन्यवाद देने के लिए धन्यवाद!
जोनाथन मारज़ुलो

11

आपको बस Apache2.conf फ़ाइल को अपडेट करने की आवश्यकता है।

उबंटू 16.04 पर

  1. फ़ाइल खोलें और संपादित करें /etc/apache2/apache2.conf
  2. Apache2.conf फ़ाइल में जगह पर नेविगेट करें <Directory /var/www/>
  3. बदलें "AllowOverride None"करने के लिए"AllowOverride All"
  4. फ़ाइल सहेजें
  5. पुनः आरंभ करें apache2 -> sudo service apache2 restart

यह उत्तर पाना कितना कठिन था! हर जगह लोग सुझाव देते हैं (फिर से) स्थैतिक सामग्री को तैनात करना, भले ही एक ताजा मैगनेटो स्थापना "डिफ़ॉल्ट" ("उत्पादन") मोड में न हो और तैनात की गई स्थिर सामग्री की आवश्यकता न हो।
जानिस एल्मेरिस

10

यदि आप Magento2 में स्थापना के बाद css और js पेज लोड डिज़ाइन की समस्या का सामना कर रहे हैं

कृपया निम्न चरण का पालन करें-

टर्मिनल खोलें और Magento वेब रूट पर नेविगेट करें

 $ cd / var / www / html / magento2 

चरण 1।

 $ php बिन / Magento सेटअप: स्थिर-सामग्री: परिनियोजित

चरण 2।

$ php बिन / मैग्नेटो इंडेक्सर: रिइंडेक्स

चरण 3।

सुनिश्चित करें कि अपाचे "rewrite_module" सक्षम है और फिर सर्वर को पुनरारंभ करें

चरण 4।

$ chown -R www-data: www-data / var / www / html / magento2 

चरण 5।

 $ chmod -R 777 / var / www / html / magento2 

चरण 6।

var / कैश के अंतर्गत कैश फ़ोल्डर हटाएं

उपरोक्त चरण काम कर रहा है। मुझे उम्मीद है कि यह आपके लिए भी काम करेगा।

अगर कोई मुद्दा है तो मुझे बताएं। :)

http://gotechnies.com/css-javascript-files-loading-magento-2-installation/


1
विंडोज़ में ये कमांड कैसे चलाते हैं?
हसन अलि

1
यह मेरे लिए सिर्फ पहले 3 चरणों के लिए काम करता है। :)
hln

6
सर्वर पर सभी फ़ाइलों के लिए 777 की अनुमति सेट करने के लिए इतना स्मार्ट नहीं है।
क्रिस गुडन

1
मैं वास्तव में उस कदम से प्रभावित नहीं हूं जहां आप पूरे मैगनेटो की स्थापना के लिए पूर्ण पढ़ने की अनुमति देते हैं।
साइक्लोनोस्कोप

1
777 के लिए अनुमतियां सेट करना बुरी सलाह है लेकिन उम्मीद है कि किसी भी sysadmins को बेहतर पता होगा।
जॉन हॉल

6

मेरे लिए यह केवल इसलिए था क्योंकि mod_rewrite सक्षम नहीं था।

sudo a2enmod rewrite

तथा

service apache2 restart


1
सही समाधान !!! +1 :)
सागरपंचल

6

मैं एक ही मुद्दा जोड़कर हल किया गया था

sudo nano /etc/apache2/apache2.conf

इसे संशोधित करें

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

इसके लिए

<Directory /var/www/html>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

आप को भी सक्षम होना चाहिए mod_rewriteऔर ssl प्रमाणपत्र apache2 मॉड्यूल को इन्सॉल करना चाहिए :

sudo a2enmod ssl

sudo a2ensite default-ssl

sudo a2enmod rewrite

sudo service apache2 restart

1
यह, प्लस rm -rf var / * ने मेरे लिए काम किया। महान और अच्छा स्थान।
जॉन हॉलैंड

6

यदि सीएसएस पथ में संस्करण का नाम दिखाया जाए तो यहां सबसे सरल समाधान है

जैसे: पब / स्टैटिक / वर्जन 323334 /

फिर इस क्वेरी को mysql में चलाएं

INSERT INTO core_config_data (path, value) VALUES ('dev/static/sign', 0)
ON DUPLICATE KEY UPDATE value = 0;

इसके बाद कॉन्फिगर कैशे को क्लियर करें

 bin/magento cache:clean config

आप व्यवस्थापक से स्थिर फ़ाइल संस्करण भी अक्षम कर सकते हैं

यहाँ छवि विवरण दर्ज करें


4
इसने मेरे लिए धन्यवाद का काम किया। हालाँकि, क्वेरी को INSERT INTO core_config_data (पथ, value) VALUES ('देव / स्थिर / संकेत', 0) को निर्धारित करने की आवश्यकता है ;
आफताब नवीद

पथ और मूल्य क्या है
zus

पथ, मान फ़ील्ड नाम हैं जो मैं पहले से ही मानों को परिभाषित करता हूं (देव / स्थिर / संकेत, 0), बस इस वर्ग को चलाएं यह काम होना चाहिए
सुरेंद्र कुमार अहीर

सही समाधान !!! मेरा दिन :) +1
सागरपंचल

5
  1. यदि आप इसे पहले अक्षम नहीं करते हैं तो कैश को अक्षम करने का प्रयास करें
  2. सुनिश्चित करें कि आपके पास क्लीन कोड वाला Magento का नवीनतम संस्करण है। यदि आप किसी चीज को संशोधित या अनुकूलित करते हैं, तो सुनिश्चित करें कि सभी त्रुटियों को ठीक करें।
  3. नीचे कई कमांड चलाएं इससे आपको मदद मिल सकती है।

    php bin/magento indexer:reindex

    php bin/magento cache:flush

में फ़ोल्डर निकालें

  • pub/static/frontend/*
  • var/cache
  • var/view_preprocessed/*

  • php bin/magento setup:static-content:deploy


3

मेरे मामले में मैंने गलती .htaccessसे फ़ाइल ROOT/pub/और ROOT/pub/staticफ़ोल्डरों को हटा दिया है । जब मैंने इसे वापस लौटाया तो यह काम करने लगा ।


2

हल किया !!!

अपने Magento2 रूट फ़ोल्डर के CLI इंटरफ़ेस में निम्नलिखित कमांड चलाएँ:

php bin/magento setup:static-content:deploy

php bin/magento indexer:reindex

इसके बाद magento2 के रूट पर इस कमांड द्वारा var फोल्डर को डिलीट करें।

rm -rf var/*

फिर अपने होमपेज और एडमिन पैनल को रिफ्रेश करें। यह काम कर रहा है !!!!! ठंडा !!!!


1

मैं 404 के साथ एक ही मुद्दा था। मैंने यह सुनिश्चित करके इसे हल किया कि अपाचे में वर्चुअलहॉस्ट निर्देश सही था। यहाँ मेरा VirtualHost है:

<VirtualHost *:80>
    DocumentRoot /var/www/magento2
    ServerName magento-ce-2.1.6
    <Directory "/var/www/magento2">
        Options Indexes FollowSymLinks
        AllowOverride All
    </Directory>
</VirtualHost>

और क्या आप यह भी बता सकते हैं, कि पहले क्या गलत था? अन्यथा यह उदाहरण दूसरों की बहुत मदद नहीं करेगा।
फाबियन शेंगलर

0

मैंने BlueOrchidd द्वारा इन चरणों का पालन करके इसे हल किया:

https://community.magento.com/t5/Installing-Magento-2/Magento-2-Installation-Worst-Experience-Ever/mp/23786#M382

एक महत्वपूर्ण बात: जो कुछ भी en_US में लोकेल को परिवर्तित नहीं करता है। स्थापना के साथ सौदा है कि ..


0

मेरे पास ओपी के रूप में एक ही मुद्दा था और यह केवल इसलिए था क्योंकि मैंने अपना लोकेल सेट किया था en_AU, इसलिए डिफ़ॉल्ट तैनाती आदेश का उपयोग करके केवल en_USसामग्री उत्पन्न हुई । आपको वास्तव में कमांड के EN के लिए उपयोग किए जा रहे लोकेल को इस तरह जोड़ना होगा:

php bin/magento setup:static-content:deploy en_US en_AU

0

मैंने उपरोक्त समाधानों की कोशिश की। लेकिन इसने मेरी मदद नहीं की। इसके बावजूद, मैंने उन्हीं आदेशों का उपयोग किया, जिनका उन्होंने अनुक्रम के परिवर्तनों के साथ उल्लेख किया था। वो हैं,

  1. कैशे composer_home, पीढ़ी, लॉग, page_cache, tmp और view_preprocessed से वर निर्देशिका

  2. एक के बाद एक कमांड चलाएं।

php bin / magento indexer: reindex

php bin / magento कैश: फ्लश

php बिन / Magento सेटअप: स्थिर-सामग्री: परिनियोजित

मुझे उम्मीद है कि यह मेरे जैसे किसी को मदद कर सकता है।


0

Mod_pagespeed अक्षम करें

पेजपीड आपकी सामग्री के "कैश्ड" उदाहरण को संक्षिप्त नाम से संसाधित करता है, अर्थात यदि यह सामान्य फ़ाइल है।

image.css

इसे निम्नानुसार सेट किया जाएगा।

image.pagespeed.css

उपरोक्त एक बहुत ही सरल उदाहरण है, लेकिन पहले से ही आप देख सकते हैं कि अंतर्निहित मुद्दा कहां है। यह इस तथ्य के कारण है कि अस्थायी रूप से कोर पाथिंग के माध्यम से नहीं पाए जाने के कारण अनुचित स्थिर सामग्री लोड हो सकती है। यह Mod_Pagespeed के साथ एक विरासत की समस्या है, क्यों हम इसे अक्षम रखने की सलाह देते हैं।

तेज धूमकेतु समर्थन के एंकर, और इसने मेरी समस्या को हल किया


0

उबंटू 18.04 (बायोनिक) के लिए। मैंने स्टैटिक फ़ाइलों को सही तरीके से लोड करने के लिए निम्न चरणों का उपयोग किया है।

स्थापना पूर्ण होने के बाद:

सुनिश्चित करें कि अपाचे मॉड्यूल 'फिर से लिखना' सक्षम है यदि नहीं तो निम्नलिखित करें

  • cd /etc/apache2
  • चलाने के आदेश a2enmod rewrite
  • sudo vi /etc/apache2/apache2.conf

फिर निम्नलिखित परिवर्तन करें

से संशोधित करें:

<Directory /var/www/>
     Options Indexes FollowSymLinks
     AllowOverride None
     Require all granted
</Directory>

सेवा मेरे

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

फिर अपाचे को पुनरारंभ करें

sudo service apache2 restart

या

sudo /etc/init.d/apache2 restart

तब के लिए अनुमतियाँ बदलें <magento root director>

  • chmod -R 774 /var/www/html/<magento root director>

फिर स्थैतिक सामग्री को तैनात करें

  • php bin/magento setup:static-content:deploy -f (यदि आप विकास में हैं तो आवश्यक है)

फिर कैश फ्लश और रिइंडेक्स

  • <magento root directory> php bin/magento cache:flush
  • <magento root directory> php bin/magento indexer:reindex

या

  • <magento root directory> rm -R /var/cache*

इसके बाद अपने होम पेज को एक्सेस करें

  • 127.0.0.1/your_configured_url के बजाय localhost/your_configured_url

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