我正在尝试安装Magento 2,但我会收到以下错误:

申请运行期间发生错误。无法将错误消息写入日志。请使用开发人员模式查看消息。

我尝试添加 SetEnv MAGE_MODE developer.htaccess 如所建议 艾伦风暴 http://magento-quickies.alanstorm.com/post/58757471044/magento-2-developer-mode 但是没有运气。

有帮助吗?

解决方案

您可以从CLI启用它

bin/magento deploy:mode:set developer

其他提示

另一种方式,我们可以启用开发人员模式

  • app/etc/ 并打开 env.php
  • 并通过 MAGE_MODE' => 'default'MAGE_MODE' => 'developer'

然后,请冲洗缓存

正如您和其他人指出的那样:

SetEnv MAGE_MODE "developer"

在您的.htaccess文件中应启用开发人员模式,假设 全部允许 适当 <Directory> 指示。

但是,与您的原始问题有关,这可能是由于权限问题,Apache Process用户没有对正确目录的写入权限。

要进行快速测试,您可以在Magento 2目录中执行以下操作:

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

然后,如果安装向导弹出,您可以尝试确保在这些目录上具有正确的Apache过程的权限。

您是否正在使用mod_fastcgi + php-fpm?我像在那个环境中一样遇到了这个问题。环境变量以“ redirect_”为前缀。

有关堆栈交换的相关问题: apache setEnv预先redirect_。是什么赋予了?

我能够通过在PHP-FPM池配置文件中设置环境变量来解决此问题:

env[MAGE_MODE] = developer

为了更改Magento 2.0模式,您必须运行此命令 php bin/magento deploy:mode:set developer 在CMD或您的SSH Windows中,进入Magento 2.0根文件夹。您可以找到更多信息 这里这里.

从命令提示符中转到您的Magento root文件夹,并在comand下方输出:

php bin/magento deploy:mode:set developer

如果您在PHP 5.4中使用内置的Web服务器,则需要在启动服务器时设置ENV:

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

有关如何使用PHP 5.4内置网络服务器的更多信息,包括Magento 2的设置2请参阅此屏幕截图:

http://quick.as/kkbahnlx

嗨,我已经阅读了您的问题,请参阅解决方案。

您可以通过CLI命令设置开发人员模式,也可以手动设置

手动设置它:

打开您的Magento 2根目录,打开文件 "/app/etc/env.php" 和搜索 "'MAGE_MODE' =>". 。您可以在此处手动更改Magento模式。

生产模式的CLI命令:

magento deploy:mode:set production

开发人员模式的CLI命令:

magento deploy:mode:set developer

有关更多信息,请访问下面的URL。http://php-scripts-form.blogspot.nl/2017/09/magento-2-how-to-set-production-mode.html

请尝试在开始文件中添加index.php中的以下行。

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

希望您会看到错误消息。

如果您使用nginx作为Web服务器...。HTACCESS不会影响。更改NGINX服务器指令将启用开发人员模式。

例如: /etc/nginx/sites-available/m2_test.conf (假设正确配置了NGINX)

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

这套 $ mage_mode 将打开开发人员模式。

其他/configurations/file.conf 应链接到配置文件路径,该路径应为 [MAGENTO_DOC_ROOT]/nginx.conf.sample

正如其他人提到的那样 php bin/magento deploy:mode:set developer 也将启用它

当您从生产变为开发人员模式时,应清除生成的类和对象管理器实体(例如代理),以防止意外错误。这样做之后,您可以更改模式。使用以下步骤:

  1. 如果您要从生产模式变为开发人员模式,请删除VAR/Generation和var/di目录的内容:

    rm -rf <your Magento install dir>/var/di/* <your Magento install dir>/var/generation/* 
    
  2. 设置模式:

    magento deploy:mode:set developer
    

将显示以下消息

   Switched to developer mode.

确保允许

sudo chmod 777 . -R

在那之后

php bin/magento deploy:mode:set developer

否则就会拒绝许可

许可以下: CC-BY-SA归因
scroll top