Les fichiers CSS et Javascript ne se chargent pas après l'installation de Magento 2

25

J'ai installé Magento 2 sur le serveur local avec succès en utilisant Composer mais je ne suis pas en mesure de voir les conceptions du panneau frontal et de l'administration. J'y vois des textes clairs. En regardant la console, je vois l'erreur suivante.

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

entrez la description de l'image ici

amitshree
la source
apache / nginx?
zhartaunik
J'utilise un serveur apache.
amitshree
êtes-vous sur windows?
Chris O'Toole
Nan. J'utilise ubuntu.
amitshree

Réponses:

13

Cela pourrait être un problème avec les liens symboliques. Je vois que deploy.php a fonctionné pour vous, mais vous pouvez également essayer de supprimer les ressources de pub / static et voir si les instructions de /magento//a/64808/594 fonctionnent pour vous. Si c'est le cas, cela peut vous faire gagner du temps pendant le développement car il devrait être plus rapide que l'exécution de deploy.php.

Il serait également bon de savoir si plusieurs personnes rencontrent des problèmes avec les liens symboliques et quelle est la cause commune.

Chris O'Toole
la source
1
Quiconque est tombé sur ce problème devrait d'abord essayer cela. Je vous remercie !
Haijerome
Fondamentalement, nous avons eu ce problème spécifique avec les installations Magento inférieures à 2.0.6, si quelqu'un a des problèmes. Surtout 2.0.4 nous a mis sur écoute. Donc, si vous avez toujours besoin d'une de ces versions, utilisez-la. La prochaine mise à niveau devrait être vers la dernière version stable!
Max
27

Si vous rencontrez un problème de CSS et de conception après l'installation dans Windows, veuillez suivre les étapes suivantes:

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

étape 2. php bin/magento indexer:reindex

étape 3. assurez-vous qu'apache "rewrite_module" est activé, puis redémarrez le serveur

étape 4. supprimer le dossier cache sous var / cache

Les étapes ci-dessus fonctionnent pour moi.J'espère que cela fonctionnera également pour vous.

Faites-moi savoir si vous rencontrez toujours un problème.

samumaretiya
la source
4
Si vous développez localement, ce n'est pas la solution que vous souhaitez . Cela vous oblige à redéployer le contenu statique à chaque fois que vous modifiez des vues. Assurez-vous que vous êtes en mode développeur et que les liens symboliques fonctionnent.
Nathan Merrill
@NathanMerrill merci pour vos commentaires. Je suppose que ce seul problème lorsque vous avez modifié le niveau du thème, mais j'obtiens un résultat parfait sans déployer localement à chaque fois.
samumaretiya
Cela dépend totalement de ce que vous faites. Si vous apportez des modifications dans le dossier d'affichage (et pas seulement en créant de nouveaux fichiers), vous devrez déployer.
Nathan Merrill
@NathanMerrill, si vous souhaitez avoir plus de conversation, vous pouvez me contacter sur skype: samumaretiya ou peut-être que nous pouvons avoir une conversation sur Google Hangout [email protected]
samumaretiya
Travaillez comme un charme !!!
Mike Nguyen
5

Ma question était que j'avais obtenu un peu trop excité avec mon pub/staticet pub/media« compensation cache » et a accidentellement supprimé la.htaccess fichier pub/static.

Une solution rapide consistait à apporter une nouvelle /magento2ce/pub/static/.htaccess et vider la cache et Bob est votre oncle. Plus de problèmes CSS.

J'espère que cela t'aides. Ce serait génial s'il y avait un moyen de supprimer des fichiers et de s'assurer que d'autres fichiers ne soient pas supprimés, comme un .gitignore pour une rm -rfutilisation Linux du système . Peut-être un jour...

S'IL VOUS PLAÎT NOTE: ce n'est que pour les problèmes CSS, désolé, je n'aide pas avec le problème JS manquant.

Nathaniel Rogers
la source
Vous êtes un héros!
Ares le
4

J'ai eu ce problème avec V2.1.3 où la signature est définie par défaut sur true. Cela signifie que les URL ont "version" dans le nom du chemin. Par exemple, le chemin du fichier doit être: -

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

Mais se traduit par: -

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

Pour changer cela, ouvrez le fichier: -

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

Et changez la valeur par défaut à zéro: -

<config>
    <par défaut>
        <dev>
            <statique>
                <sign> 0 </sign>
            </static>
        </dev>
    </default>
</config>
Dallas Clarke
la source
2

J'ai rencontré ce problème sur plusieurs installations de Magento 2 en production.

En supposant que vous l'ayez fait en premier à partir de la ligne de commande.

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

Modifiez ensuite les autorisations de fichier sur 755 dans les répertoires suivants:

/pub/

/ pub / statique /

/ pub / statique / frontend /

/ pub / static / adminhtml /

/ pub / static / _requirejs /

Voila! Les fichiers CSS / JS se chargent parfaitement.

Robbie Reynolds
la source
1

Après avoir accédé au dossier dev / tools / Magento / Tools / View et l'avoir exécuté dans la ligne de commande, le problème a été résolu.

php deploy.php
amitshree
la source
1
putain j'espère que ça résoudra mon problème aussi, mais dev / tools / Magento / Tools / View n'existe pas dans mon installation
Tobias Hartmann
@TobiasHartmann: Avez-vous vérifié que mod_rewrite est activé ou non? De plus, tous les répertoires / fichiers ont l'autorisation correcte ou non?
amitshree
1

J'avais aussi ce problème, mais ça a fini par être un core_config_dataproblème. Tous mes actifs étaient acheminés vers l' httpsURL, bien que j'aie défini cette URL http.

Il y a un champ core_config_dataappelé web/secure/use_in_frontendqui a été défini sur 1. Je l'ai défini sur 0, effacé le cache et cela a fonctionné correctement.

Joshua Soileau
la source
1

1- Modifiez le fichier app / etc / di.xml en changeant le contenu suivant:

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

À:

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

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

Hari
la source
1

J'ai eu ce problème lors de l'utilisation de fichiers de langue.

Lorsque vous utilisez une langue, vous devez inclure la langue du système:

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

Si vous rencontrez un problème de conception de chargement de page css et js après l'installation dans magento2, veuillez suivre l'étape suivante:

ouvrez le terminal et accédez à la racine Web de Magento

 $ cd / var / www / html / magento2 
Étape 1.

 $ php bin / magento setup: contenu statique: déployer 

Étape 2.

 $ php bin / indexeur magento: réindexer
Étape 3.

assurez-vous qu'apache «rewrite_module» est activé, puis redémarrez le serveur

Étape 4.

 $ chown -R www-data: www-data / var / www / html / magento2 
Étape 5

 $ chmod -R 777 / var / www / html / magento2 
Étape 6

supprimer le dossier de cache sous var / cache

L'étape ci-dessus fonctionne. J'espère que cela fonctionnera aussi pour vous.

Arvind Rawat
la source
0

Veuillez suivre les étapes ci-dessous pour vous débarrasser de ces problèmes.

1) Téléchargez le Magento 2.

2) Extrayez ceci dans votre répertoire www OR htdocs.

3) Installez le magento. N'utilisez pas localhost , utilisez 127.0.0.1 dans l'URL du magasin et l'URL d'administration.

4) Après une installation réussie, NE PAS EXÉCUTER MAGENTO.

5) Maintenant, supprimez le cache / session de magento 2. Allez dans les chemins mentionnés ci-dessous et supprimez les fichiers.

Magento Root > var > cache > Delete all files

Magento Root > var > page_cache > Delete all files

Magento Root > var > session > Delete all files

6) Modifiez le comportement des liens symboliques pour certaines ressources statiques comme indiqué ci-dessous: -

Lorsque Magento 2 n'est pas en mode production, il essaiera de créer des liens symboliques pour certaines ressources statiques sur le serveur local. Nous devons changer ce comportement de Magento 2 en allant éditer le ROOT > app > etc > di.xmlfichier. Ouvrez di.xml dans votre éditeur de code préféré, trouvez la virtualType name="developerMaterialization"section. Dans cette section ci-dessous, vous trouverez un élément <item name="view_preprocessed" xsi:type="object">qui doit être modifié. Vous pouvez le modifier en changeant le contenu suivant:

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

À:

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

7) Supprimer tous les fichiers sauf **.htaccess**

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

C'EST FAIT. Vous pouvez maintenant exécuter l'URL avant et arrière de magento

Muhammad Azeem
la source
0

Exécutez les commandes suivantes:

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
la source
0

Pas besoin de modifier di.xml. Nous étions confrontés à des erreurs de chargement de js alors que les liens symboliques étaient activés.
Beaucoup de;

TypeError: $ .widget n'est pas une fonction

Fermez simplement le lien symbolique

Avancé> Développeur> Paramètres du modèle> Autoriser les liens symboliques> Non

Après sa fermeture, les ressources déployées peuvent ne pas être chargées lentement pour la première fois, mais les erreurs js ont disparu.

rbostan
la source
0

Considérez également que la modification des paramètres régionaux de votre boutique pourrait avoir cet effet si vous ne disposez pas de ces paramètres régionaux dans votre propre thème. Je l'ai vu arriver plusieurs fois.

ivanji
la source
0

Vous pouvez suivre ces instructions:

S'il existe une version#######méthode similaire à celle ci-dessous, elle vous sera certainement utile. http: //localhost/magento2/pub/static/version1511270229/frontend/Magento/luma/en_US/mage/calendar.css

Magasins> Configuration> Avancé> Développeur> Signer les fichiers statiques (Oui-> Non)

SI vous avez accès à la base de données, exécutez cette commande:

Insérez les valeurs core_config_data (config_id, scope, scope_id, path, value) (null, 'default', 0, 'dev / static / sign', 0);

Remove the cache and reload the page. Ces deux étapes simples m'ont aidé à résoudre les problèmes de chemin de fichier js et css.

inrsaurabh
la source
0

Je manquais juste le .htaccess dans le dossier pub / static. Cela doit être là.

OZZIE
la source
Cela ne fournit pas de réponse à la question. Pour critiquer ou demander des éclaircissements à un auteur, laissez un commentaire sous son article. - De l'avis
Rama Chandran M
@RamaChandranM J'ai eu les mêmes "symptômes" sur mon site magento, je l'ai recherché sur Google et j'ai trouvé cette question. J'ai trouvé plus tard une solution à mon problème. Pourquoi ne partagerais-je pas une solution possible avec d'autres? Même si ce n'était pas le problème spécifique des auteurs ici .. Commentaire vraiment bizarre!
OZZIE
0

Face à ce problème à plusieurs reprises. La première chose que le premier pub / statique devrait avoir.

Kalyan Chakravarthi V
la source
0

Dans mon cas, dans la configuration d'apache, je change AllowOverride de None à All dans la section Directory respective.

Marcin Żurek
la source