Lỗi sau khi nâng cấp magento


27

Sau khi bắn lệnh này trong CLI php bin/magento setup:upgrade

Tôi nhận được lỗi dưới đây -:

Fatal error: Uncaught exception 'Magento\Framework\Exception\LocalizedException' with message 'Can't create directory 
/var/www/html/magento/magento2.0/var/generation/Magento/Framework/App/ResourceConnection/.' in 
/var/www/html/magento/magento2.0/vendor/magento/framework/Code/Generator.php:103
Stack trace:
#0 /var/www/html/magento/magento2.0/vendor/magento/framework/Code/Generator/Autoloader.php(35): Magento\Framework\Code\Generator->generateClass('Magento\\Framewo...')
#1 [internal function]: Magento\Framework\Code\Generator\Autoloader->load('Magento\\Framewo...') #2 [internal function]: spl_autoload_call('Magento\\Framewo...')
#3 /var/www/html/magento/magento2.0/vendor/magento/framework/Code/Reader/ClassReader.php(19): ReflectionClass->__construct('Magento\\Framewo...')
#4 /var/www/html/magento/magento2.0/vendor/magento/framework/ObjectManager/Definition/Runtime.php(44): Magento\Framework\Code\Reader\ClassReader->getConstructor('Magento\\Framewo...')
#5 /var/www/html/magento/magento2.0/vendor/magento/framework/ObjectMana in /var/www/html/magento/magento2.0/vendor/magento/framework/Code/Generator.php on line 103`

Câu trả lời:


33

Tôi đã giải quyết vấn đề này chỉ bằng cách thực hiện các bước này. làm theo các bước:

  1. Xóa thư mục "di" nằm trong varthư mục (cho 2.02.1)
  2. Chạy lệnh này và đi đến lệnh thư mục gốc dự án của bạn:

    cd /yourmagentoroot/

    Nếu chế độ Magento của bạn là nhà phát triển thì bạn không cần phải chạy bên dưới các lệnh chỉ cần xóa var/generationthư mục (2.0 & 2.1) hoặc generatedthư mục (2.2 trở đi)

  3. Sau đó chạy lệnh này

    php bin/magento setup:di:compile
  4. Sau đó chạy lệnh này (chỉ yêu cầu trong chế độ sản xuất)

    php bin/magento setup:static-content:deploy
  5. Cuối cùng, cấp quyền cho tập tin / thư mục. (Nếu cần)


Làm cách nào tôi có thể giải quyết SUDO
zus

1
@zus trong windows thử mà không cần sudo
Murtuza Zabuawala

31

Trao toàn quyền kiểm soát (đọc / ghi / thực thi) cho varpub giải quyết vấn đề này cho tôi.

sudo chmod -R 777 var pub

Hoặc, bạn cũng có thể thử chạy lệnh bằng sudo .

sudo php bin/magento setup:upgrade

Ngoài ra, hãy thử xóa bộ nhớ cache.

sudo rm -rf var/cache/* var/generation/*

Trong một số trường hợp nếu bạn có quyền truy cập sudo vào chủ sở hữu hệ thống tệp magento hoặc người dùng máy chủ web (www-data / nginx). Bạn có thể thực thi lệnh như thế này: sudo -u www-data bin / magento list--
div

12

Thiết lập lại quyền sở hữu

CentOS: chown -R :apache .
Ubuntu: chown -R :www-data .

Tham khảo liên kết này


bây giờ tôi đang nhận được lỗi này
Murtuza Zabuawala

1
Cảnh báo: ltrim () dự kiến ​​tham số 1 sẽ là chuỗi, đối tượng được đưa ra trong /var/www/html/magento/magento2.0/vendor/magento/framework/Code/Generator/EntityAbauge.php trên dòng 152 Thông báo: offset chuỗi chưa được khởi tạo: 0 in /var/www/html/magento/magento2.0/vendor/magento/framework/Autoload/ClassLoaderWrapper.php trên dòng 81 Lưu ý: offset chuỗi chưa được khởi tạo: 0 in /var/www/html/magento/magento2.0 nhà cung cấp / nhà soạn nhạc / ClassLoader.php trên dòng 317 Cảnh báo: ltrim () dự kiến ​​tham số 1 sẽ là chuỗi, đối tượng được đưa ra trong /var/www/html/magento/magento2.0/vendor/magento/framework/Code/Generator/Entity. php trực tuyến
Murtuza Zabuawala

1
@murtuza vui lòng xóa var/generationthư mục và thư mục của bạn cachetrong đó varvà thử lại.
Maddy
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.