Je voulais ajouter un script php personnalisé au dossier racine magento2 et l'exécuter à partir du navigateur.J'ai essayé de l'ajouter dans le dossier racine magento2 mais il redirige vers la page 404.
J'ai également essayé de l'ajouter dans le dossier pub mais sans succès.
Également effacé le cache et la génération.
J'utilise magento2 sur le serveur nginx
Réponses:
Si vous utilisez la configuration nginx fournie avec magento, vous devez placer un fichier dans un
pub
dossier pour y accéder depuis le navigateur car pub est la racine du document du vhost. Le répertoire racine de Magento est d'un niveau supérieur. Deuxièmement config par défaut pour nginx ne permet d'accéderindex.php
,get.php
,static.php
,report.php
,404.php
et les503.php
fichiers. Les autres ne sont pas traités par le php. Vous pouvez le voir en ligne aveclocation ~ (index|get|static|report|404|503)\.php$ {
dans nginx.conf.sample. Si vous ne l'utilisez pas, vérifiez votre configuration pour une règle similaire. Pour permettre à un autre fichier d'être accessible à partir du navigateur, ajoutez simplement un autre nom après 503 ou modifiez des crochets entiers aveclocation ~* \.php$ {
la source
Par exemple, pour obtenir le nom du produit par le script personnalisé
Créez
test.php
à la racine de Magentovar/www/html/magento2/test.php
Vous pouvez exécuter le script
test.php
enhttp://127.0.0.1/magento2/test.php
étape 1: créer index.php à la racine de magento 2
var/www/htmlmagento2/test/index.php
étape 2: créer customScript.php
/var/www/html/magento2/test/customScript.php
Vous pouvez maintenant exécuter ce script personnalisé en
http://127.0.0.1/magento2/test/
la source
./customScript.php
je peux voir que votre customScript.php est d'un niveau supérieur à index.phpcustomScript.php
fichier se trouve dans le même répertoire queindex.php
. Si je l'../customScript.php
Si vous souhaitez autoriser plus d'un script php pour être exécutable comme je l' ai besoin (import.php pour les produits d'importation ERP, stock.php pour la mise à jour de l'inventaire avec mon ERP etc ...):
scripts
dans le/pub
dossiermagento
vhost et ajoutez des lignes sous##Allow pub/srcipts/ folder to execute php custom
Avec cela, vous pouvez maintenant exécuter vos scripts en y accédant à:
la source