Eu queria adicionar script php personalizado à pasta raiz do magento2 e executar a partir do navegador. Tentei adicioná-lo na pasta raiz do magento2, mas ele redireciona para a página 404.
Eu também tentei adicioná-lo na pasta pub, mas sem sucesso.
Também limpo cache e geração.
Estou executando o magento2 no servidor nginx
Respostas:
Se você estiver usando a configuração nginx que acompanha o magento, precisará colocar um arquivo dentro da
pub
pasta para permitir o acesso a ele pelo navegador, pois pub é a raiz do documento do vhost. O diretório raiz do Magento está um nível acima. Em segundo lugar configuração padrão para nginx permite apenas para acessoindex.php
,get.php
,static.php
,report.php
,404.php
e503.php
arquivos. Qualquer outro não é processado pelo php. Você pode ver isso alinhado comlocation ~ (index|get|static|report|404|503)\.php$ {
nginx.conf.sample. Se você não o estiver usando, verifique sua configuração para obter uma regra semelhante. Para permitir que outro arquivo seja acessível no navegador, adicione outro nome após 503 ou altere colchetes inteiros comlocation ~* \.php$ {
fonte
Por exemplo, para obter o nome do produto pelo script personalizado
Crie
test.php
na raiz do Magentovar/www/html/magento2/test.php
Você pode executar script
test.php
porhttp://127.0.0.1/magento2/test.php
passo 1: crie o index.php na raiz do magento 2
var/www/htmlmagento2/test/index.php
etapa 2: criar customScript.php
/var/www/html/magento2/test/customScript.php
Agora você pode executar esse script personalizado
http://127.0.0.1/magento2/test/
fonte
./customScript.php
eu posso ver que o seu customScript.php é um nível acima do index.phpcustomScript.php
arquivo está no mesmo diretório queindex.php
. Se eu estava incluindo-o a partir de uma pasta um nível acima que eu faria../customScript.php
(note os dois pontos)Se você deseja permitir que mais de um script php seja executável como eu preciso (import.php para o produto de importação ERP, stock.php para atualizar o inventário com o meu ERP etc ...):
scripts
na/pub
pastamagento
vhost e adicione linhas em##Allow pub/srcipts/ folder to execute php custom
Com isso, agora você pode executar seus scripts acessando-os em:
fonte