Magento 2'deki Geliştirici Modunu nasıl ayarlarım?


44

Magento 2'yi yüklemeye çalışıyorum ancak aşağıdaki hatayı alıyorum:

Uygulama çalışması sırasında hata oluştu. Günlük kaydı için hata mesajı yazılamadı. Lütfen mesajı görmek için geliştirici modunu kullanın.

Ben ekleyerek denedim SetEnv MAGE_MODE developerhiç .htaccesstavsiye ettiği şekilde Alan Fırtına http://magento-quickies.alanstorm.com/post/58757471044/magento-2-developer-mode ama hiç şansım.


Apache veya nginx kullanıyor musunuz? Çevresel değişkeni tam olarak nasıl ayarladınız?
kullanıcı487772,

@Tim Apache kullanıyorum. .Htaccess'in tepesine ekleyerek hazırladım
Paul Donnelly

Neyi ekliyor? Lütfen tüm bu bilgileri sorunuza ekleyin.
kullanıcı487772,

Sen sahip olacak mod_envApache için ve etkin AllowOverride Oniçin sırayla sankonun yapılandırmasında .htaccessçözümlenmesi mümkündür.
benmark

Yanıtlar:


75

uçbirimden etkinleştirebilirsiniz

bin/magento deploy:mode:set developer


30

Başka bir yolla, geliştirici modunu etkinleştirebiliriz

  • Git app/etc/ve açenv.php
  • ve güncel uygulama modunu değiştirmek MAGE_MODE' => 'default' içinMAGE_MODE' => 'developer'

O zaman lütfen önbelleği temizle


18

Sizin ve diğerlerinin dediği gibi:

SetEnv MAGE_MODE "developer"

.htaccess dosyanızda, AllowOverride All öğesinin uygun <Directory>yönergede olduğunu varsayarak geliştirici modunu etkinleştirmesi gerekir .

Ancak asıl sorununuzla ilgili olarak, Apache işlemi kullanıcısının doğru dizinlere yazma izni olmadığı bir izin sorunundan kaynaklanıyor olabilir.

Hızlı bir test için Magento 2 dizininizde aşağıdakileri yapabilirsiniz:

chmod -R a+wX var
chmod -R a+wX app/etc
chmod -R a+wX pub

Ardından kurulum sihirbazı açılırsa, Apache işleminiz için bu dizinlerde doğru izinlere sahip olduğunuzdan emin olmayı deneyebilirsiniz.


1
Ortam değişkenlerini kullanarak modu geçersiz kılmak hala mümkün olsa da, şimdi tercih edilen yöntem kullanmaktır bin/magento. Bakınız devdocs.magento.com/guides/v2.0/config-guide/bootstrap/… ve devdocs.magento.com/guides/v2.0/config-guide/cli/…
Fabian Schmengler

8

Mod_fastcgi + php-fpm kullanıyor musunuz? Bu meseleyi o ortamda olduğu gibi karşıladım. Ortam değişkeni "REDIRECT_" ile ön ek alıyordu.

Burada yığın değişimi ile ilgili soru: Apache SetEnv, REDIRECT_'yi hazırlar. Ne oluyor?

Bunu sadece php-fpm havuz yapılandırma dosyasındaki ortam değişkenini ayarlayarak çözebildim:

env[MAGE_MODE] = developer

8

Magento 2.0 modunu değiştirmek için bu komutu php bin/magento deploy:mode:set developerCMD'de veya SSH pencerelerinizde magento 2.0 kök klasöründe çalıştırmanız gerekir. Daha fazla bilgiyi burada ve burada bulabilirsiniz .


5

Komut isteminden magento kök klasörünüze gidin ve komutun altındaki excecute:

php bin/magento deploy:mode:set developer


4

PHP 5.4'te yerleşik web sunucusunu kullanıyorsanız, sunucuyu başlatırken ENV'yi ayarlamanız gerekir:

MAGE_MODE=developer php -d variables_order=EGPCS -S 127.0.0.1:8080 router.php

PHP 5.4'ün yerleşik web sunucusu olan Magento 2'nin kurulumu da dahil olmak üzere nasıl kullanılacağı hakkında daha fazla bilgi için bu senaryoya bakınız:

http://quick.as/kkbahnlx


4

Lütfen aşağıdaki satırı index.php içine başlangıç ​​dosyasına ekleyerek deneyin.

$_SERVER['MAGE_MODE'] = 'developer';

Umarım hata mesajını görürsünüz.


4
index.php
7ochem

1
Bunun her iki şekilde de repo olması gerektiğine inanıyorum, bu yüzden yerelde bir kez değiştirdiğinizde çok da kötü bir şey yapmazsınız.
Maciej Paprocki

4

Merhaba Sorunuzu okudum ve lütfen çözüme bakın.

Geliştirici modunu CLI komutuyla ve ayrıca el ile

Manuel olarak ayarlamak için:

magento 2 kök dizininizi açın, dosyayı açın "/app/etc/env.php"ve arayın "'MAGE_MODE' =>". magento modunu burada manuel olarak değiştirebilirsiniz.

Üretim modu için CLI komutu:

magento deploy:mode:set production

Geliştirici modu için CLI komutu:

magento deploy:mode:set developer

Daha fazla bilgi için lütfen URL adresini ziyaret edin. http://php-scripts-form.blogspot.nl/2017/09/magento-2-how-to-set-production-mode.html


Nasıl olabilir bkz değiştirmeden önce mod?
Razvan Zamfir

@RazvanZamfir deploy:mode:showgeçerli modu görmek için kullanabilirsiniz .
Eric Seast ve

3

NginX'i web sunucusu olarak kullanıyorsanız ... .htaccess etkilemez. NginX Sunucu Yönergelerini değiştirmek, geliştirici modunu etkinleştirir.

örneğin: /etc/nginx/sites-available/m2_test.conf(nginx'in uygun şekilde yapılandırıldığını varsaymak)

server {
   listen 80;
   server_name m2.test.com;
   set $MAGE_ROOT path/to/magento2;
   set $MAGE_MODE developer;
   include other/configurations/file.conf;
}

Bu set $ MAGE_MODE geliştirici modunu açacaktır.

Diğer / configurations / file.conf dosyasının bir kopyası olması gereken yapılandırma dosya yoluna bağlanması gerekir.[MAGENTO_DOC_ROOT]/nginx.conf.sample

Diğerlerinin de söylediği gibi, php bin/magento deploy:mode:set developerbunu da mümkün kılacak


modunu hem nginx conf hem de magento konsolundan ayarlamalı mıyım? Biri geliştirici ve bir üretim ise ne olur?
LucScu

3

Üretimden geliştirici moduna geçtiğinizde, beklenmeyen hataları önlemek için oluşturulan sınıfları ve proxy'ler gibi Object Manager varlıklarını silmelisiniz. Bunu yaptıktan sonra, modları değiştirebilirsiniz. Aşağıdaki adımları kullanın:

  1. Üretim modundan geliştirici moduna geçiyorsanız, var / generation ve var / di dizinlerinin içeriğini silin:

    rm -rf <your Magento install dir>/var/di/* <your Magento install dir>/var/generation/* 
  2. Modu ayarla:

    magento deploy:mode:set developer

Aşağıdaki mesaj görüntülenecek

   Switched to developer mode.

0

izin verdiğinden emin ol

sudo chmod 777 . -R

Daha sonra

php bin/magento deploy:mode:set developer

aksi halde izin reddedildi


0

Gereğince DEVDOCS burada sizin için bir çözümdür.

Üretim Modundan Geliştirici Moduna geçiyorsanız, oluşturulan tüm sınıfları ve Nesneleri silmeniz gerekir.

Oluşturulan Kod ve Oluşturulan Meta Veri Dizinlerinin içeriğini silmek için bu kod satırını CLI'de çalıştırın.

$rm rf <magento_root>/ generated/metadata/* <magento_root>/generated/code/*

Modu ayarlamak için

$bin / magento deploy : mode : set developer

Bu komutu çalıştırdıktan sonra, Geliştirici Modunu Etkinleştir hakkında bir mesaj görüntülenir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.