CSS- und Javascript-Dateien werden nach der Installation von Magento 2 nicht geladen

25

Ich habe Magento 2 erfolgreich mit Composer auf einem lokalen Server installiert, kann jedoch keine Frontend- und Admin-Panel-Designs erkennen. Ich sehe dort einfache Texte. Beim Betrachten der Konsole wird der folgende Fehler angezeigt.

TypeError: require.config is not a function requirejs-config.js
TypeError: require.config is not a function admin:59
TypeError: require is not a function admin:62
ReferenceError: Ext is not defined admin:68
ReferenceError: Fieldset is not defined admin:76
TypeError: require is not a function admin:83
TypeError: require is not a function

Bildbeschreibung hier eingeben

amitshree
quelle
Apache / Nginx?
Zhartaunik
Ich benutze Apache Server.
Amitshree
stehst du auf windows
Chris O'Toole
Nee. Ich benutze Ubuntu.
amitshree

Antworten:

13

Dies könnte ein Problem mit Symlinks sein. Ich sehe, dass deploy.php für Sie funktioniert hat, aber Sie können auch versuchen, die Ressourcen aus pub / static zu löschen und zu prüfen, ob die Anweisungen von https://magento.stackexchange.com/a/64808/594 für Sie funktionieren. In diesem Fall können Sie während der Entwicklung Zeit sparen, da dies schneller sein sollte als die Ausführung von deploy.php.

Es wäre auch gut zu wissen, ob mehrere Personen Probleme mit den Symlinks haben und was die gemeinsame Ursache ist.

Chris O'Toole
quelle
1
Jeder, der auf dieses Problem gestoßen ist, sollte es zuerst versuchen. Vielen Dank !
Haijerome
Grundsätzlich hatten wir dieses spezifische Problem mit Magento-Installationen unter 2.0.6, falls jemand Probleme hat. Besonders 2.0.4 haben uns nervt. Wenn Sie also noch eine dieser Versionen benötigen, verwenden Sie diese. Das nächste Upgrade sollte auf die neueste stabile Version erfolgen!
Max
27

Wenn Sie nach der Installation unter Windows auf ein Problem mit CSS und Design stoßen, befolgen Sie bitte die folgenden Schritte:

Schritt 1. php bin/magento setup:static-content:deploy

Schritt 2. php bin/magento indexer:reindex

Schritt 3. Stellen Sie sicher, dass Apache "rewrite_module" aktiviert ist, und starten Sie den Server neu

Schritt 4. Cache-Ordner unter var / cache löschen

Die oben genannten Schritte funktionieren für mich. Ich hoffe, dass dies auch für Sie funktioniert.

Lassen Sie mich wissen, wenn Sie noch ein Problem haben.

samumaretiya
quelle
4
Wenn Sie lokal entwickeln, ist dies nicht die gewünschte Lösung . Dies erfordert, dass Sie statischen Inhalt jedes Mal neu bereitstellen, wenn Sie Änderungen an Ansichten vornehmen. Stellen Sie sicher, dass Sie sich im Entwicklermodus befinden und Symlinks funktionieren.
Nathan Merrill
@ NathanMerrill vielen Dank für Ihr Feedback. Ich denke, dies ist das einzige Problem, wenn Sie eine Änderung der Themenebene vorgenommen haben. Ich erhalte jedoch ein perfektes Ergebnis, ohne es jedes Mal lokal bereitzustellen.
samumaretiya
Es kommt ganz darauf an, was du tust. Wenn Sie Änderungen im Ansichtsordner vornehmen (nicht nur neue Dateien erstellen), müssen Sie die Bereitstellung durchführen.
Nathan Merrill
@NathanMerrill, wenn Sie mehr Unterhaltung haben möchten können Sie mir bei Skype erreichen: samumaretiya oder sein können , wir Gespräch über Google Hangout [email protected] haben
samumaretiya
Arbeit wie ein Zauber !!!
Mike Nguyen
5

Mein Problem war, dass ich ein wenig zu aufgeregt mit meinem pub/staticund pub/media"Cache-Clearing" geworden war und versehentlich die .htaccessDatei in gelöscht hatte pub/static.

Eine schnelle Lösung bestand darin, einen neuen /magento2ce/pub/static/.htaccesseinzulegen und den Cache zu leeren, und Bob ist dein Onkel. Keine CSS-Probleme mehr.

Hoffe das hilft. Es wäre fantastisch, wenn es eine Möglichkeit gäbe, Dateien zu entfernen und auf irgendeine Weise sicherzustellen, dass andere Dateien nicht entfernt wurden, wie z rm -rf. B. ein .gitignore für die Verwendung unter System-Linux . Vielleicht eines Tages...

BITTE BEACHTEN SIE: Dies ist nur für die CSS-Probleme. Tut mir leid, ich helfe nicht mit dem fehlenden JS-Problem.

Nathaniel Rogers
quelle
Du bist ein Held!
Ares
4

Ich hatte dieses Problem mit V2.1.3, wo die Signatur standardmäßig auf true gesetzt ist. Dies bedeutet, dass die URLs "version" im Pfadnamen haben. Zum Beispiel sollte der Dateipfad sein:

pub / static / adminhtml / Magento / backend / de_DE / mage / adminhtml / events.js

Kommt aber durch als: -

pub / static / version14043395384 / adminhtml / Magento / backend / de_DE / mage / adminhtml / events.js

Um dies zu ändern, öffnen Sie die Datei: -

source \ vendor \ magento \ module-theme \ etc \ config.xml

Und ändern Sie den Standardwert auf Null: -

<config>
    <default>
        <dev>
            <static>
                <sign> 0 </ sign>
            </ static>
        </ dev>
    </ default>
</ config>
Dallas Clarke
quelle
2

Ich bin auf dieses Problem bei mehreren Magento 2-Installationen in der Produktion gestoßen.

Vorausgesetzt, Sie haben dies zuerst über die Befehlszeile getan.

php bin/magento setup:static-content:deploy from <magento_install_dir>

Ändern Sie dann die Dateiberechtigungen für die folgenden Verzeichnisse auf 755:

/ pub /

/ pub / static /

/ pub / static / frontend /

/ pub / static / adminhtml /

/ pub / static / _requirejs /

Voila! CSS / JS-Dateien werden perfekt geladen.

Robbie Reynolds
quelle
1

Nachdem Sie zum Ordner dev / tools / Magento / Tools / View navigiert und diesen in der Befehlszeile ausgeführt haben, wurde das Problem behoben.

php deploy.php
amitshree
quelle
1
verdammt hoffte, das wird mein Problem auch beheben, aber dev / tools / Magento / Tools / View existiert nicht in meiner Installation
Tobias Hartmann
@TobiasHartmann: Hast du überprüft, ob mod_rewrite aktiviert ist oder nicht? Auch haben alle Verzeichnisse / Dateien die richtige Erlaubnis oder nicht?
amitshree
1

Ich hatte auch dieses Problem, aber es endete damit, dass es ein core_config_dataProblem war. Mein gesamtes Vermögen wurde an die httpsURL weitergeleitet, obwohl ich diese URL festgelegt habe http.

Es gibt ein Feld mit dem core_config_dataNamen, web/secure/use_in_frontenddas auf gesetzt wurde 1. Ich habe es auf gesetzt 0, den Cache geleert und es hat richtig funktioniert.

Joshua Soileau
quelle
1

1- Ändern Sie die Datei app / etc / di.xml , indem Sie den folgenden Inhalt ändern:

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

Zu:

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

2- sudo php /var/www/html/magento2ce/bin/magento setup:static-content:deploy

Hari
quelle
1

Ich hatte dieses Problem bei der Verwendung von Sprachdateien.

Wenn Sie eine Sprache verwenden, müssen Sie die Systemsprache einbeziehen:

php bin/magento setup:static-content:deploy nl_NL
emp
quelle
0

Wenn Sie nach der Installation in magento2 auf ein Problem mit dem Laden von CSS- und JSS-Seiten stoßen, gehen Sie wie folgt vor:

Öffnen Sie das Terminal und navigieren Sie zum Magento-Webstamm

 $ cd / var / www / html / magento2 
Schritt 1.

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

Schritt 2.

 $ php bin / magento indexer: reindex
Schritt 3.

Stellen Sie sicher, dass Apache "rewrite_module" aktiviert ist, und starten Sie den Server neu

Schritt 4.

 $ chown -R www-Daten: www-Daten / var / www / html / magento2 
Schritt 5.

 $ chmod -R 777 / var / www / html / magento2 
Schritt 6.

Cache-Ordner unter var / cache löschen

Der obige Schritt funktioniert. Ich hoffe, dass dies auch für Sie funktioniert.

Arvind Rawat
quelle
0

Befolgen Sie die nachstehenden Schritte, um diese Probleme zu beheben.

1) Laden Sie das Magento 2 herunter.

2) Extrahieren Sie dies in Ihr www ODER htdocs Verzeichnis.

3) Installieren Sie das Magento. Verwenden Sie nicht localhost , sondern 127.0.0.1 in store url und admin url.

4) Nach erfolgreicher Installation MAGENTO NICHT LAUFEN.

5) Löschen Sie nun den Cache / die Sitzung von magento 2. Gehen Sie zu den unten angegebenen Pfaden und löschen Sie die Dateien.

Magento Root > var > cache > Delete all files

Magento Root > var > page_cache > Delete all files

Magento Root > var > session > Delete all files

6) Ändern Sie das Verhalten von Symlinks für einige statische Ressourcen wie folgt:

Wenn sich Magento 2 nicht im Produktionsmodus befindet, wird versucht, Symlinks für einige statische Ressourcen auf dem lokalen Server zu erstellen. Wir müssen dieses Verhalten von Magento 2 ändern, indem wir die ROOT > app > etc > di.xmlDatei bearbeiten . Öffnen Sie di.xml in Ihrem bevorzugten Code-Editor und suchen Sie den virtualType name="developerMaterialization"Abschnitt. In diesem Abschnitt finden Sie ein Element, <item name="view_preprocessed" xsi:type="object">das geändert werden muss. Sie können es ändern, indem Sie den folgenden Inhalt ändern:

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

Zu:

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

7) Löschen Sie alle Dateien außer **.htaccess**

Magento Root > pub > static > Delete all files except **.htaccess**

ES IST FERTIG. Nun können Sie die magento Front- und Backend-URL ausführen

Muhammad Azeem
quelle
0

Führen Sie die folgenden Befehle aus:

php bin/magento setup:static-content:deploy
php bin/magento setup:upgrade
php bin/magento setup:di:compile 
php bin/magento cache:clean
Abhinav Singh
quelle
0

Di.xml muss nicht bearbeitet werden. Beim Laden von js sind Fehler aufgetreten, während symlinks aktiviert waren.
Viele;

TypeError: $ .widget ist keine Funktion

Einfach Symlink schließen

Erweitert> Entwickler> Vorlageneinstellungen> Symlinks zulassen> Nein

Nach dem Schließen werden möglicherweise nicht alle Ressourcen zum ersten Mal langsam geladen, aber die Fehler sind verschwunden.

rbostan
quelle
0

Bedenken Sie auch, dass das Ändern des Gebietsschemas Ihres Shops diesen Effekt haben kann, wenn Sie dieses Gebietsschema nicht in Ihrem eigenen Thema verfügbar haben. Ich habe es ein paar Mal gesehen.

ivanji
quelle
0

Sie können diese Anweisungen befolgen:

Wenn es eine version#######solche Methode gibt, wird sie sicherlich helfen. http: //localhost/magento2/pub/static/version1511270229/frontend/Magento/luma/en_US/mage/calendar.css

Stores> Konfiguration> Erweitert> Entwickler> Statische Dateien signieren (Ja-> Nein)

Wenn Sie Zugriff auf die Datenbank haben, führen Sie den folgenden Befehl aus:

Geben Sie die Werte für core_config_data (config_id, scope, scope_id, path, value) ein (null, 'default', 0, 'dev / static / sign', 0).

Remove the cache and reload the page. Diese beiden einfachen Schritte haben mir geholfen, die Probleme mit dem Dateipfad js und css zu lösen.

inrsaurabh
quelle
0

Ich habe nur die .htaccess-Datei im pub / static-Ordner vermisst. Es muss da sein.

OZZIE
quelle
Dies gibt keine Antwort auf die Frage. Um einen Autor zu kritisieren oder um Klarstellung zu bitten, hinterlassen Sie einen Kommentar unter seinem Beitrag. - Aus der Bewertung
Rama Chandran M
@RamaChandranM Ich hatte die gleichen "Symptome" auf meiner Magento-Site, googelte es und fand diese Frage. Ich habe später eine Lösung für mein Problem gefunden. Warum würde ich eine mögliche Lösung nicht mit anderen teilen? Auch wenn das nicht das spezifische Problem des Autors war .. Wirklich seltsamer Kommentar!
Ozzie
0

Konfrontiert dieses Problem viele Male. Als erstes sollte pub / static eine .htaccess-Datei haben, die die URL für die Versionsnummer enthält, die in der URL für statische Assets enthalten ist.

Kalyan Chakravarthi V
quelle
0

In meinem Fall ändere ich in der Apache-Konfiguration AllowOverride von None in All im entsprechenden Directory-Bereich.

Marcin Żurek
quelle