🗂

Magento2 再インストール【Ubuntu Server】

2021/04/26に公開

Magento2のアップグレードでつまづいていているうちにMagentoが起動しなくなったので再インストールした。(ファイルを壊してしまったのかも)
・環境
ubuntu 18.04 LTS
Apache 2.4.29
PHP 7.3
MySQL 14.14
magento 2.3→2.4.1
magentoのrootディレクトリ:/var/www/html

・magentoアンインストール
php bin/magento setup:uninstall
さらに、html以下のファイル/ディレクトリも削除
rm -r /var/www/html/*

・mysql Database削除
ログイン
sudo mysql -u root -p
(uはユーザー、pはパスワード要求)

データベース一覧取得
show databases;

データベース削除(magento2がデータベース名)
drop database if exists magento2;

ユーザ一覧取得
select user, host from mysql.user;

ユーザ削除(magentoがユーザー名)
drop user magento@localhost;

・新規データベース/ユーザー作成
データベース(magento2)作成
create database magento2 character set utf8mb4;
ユーザー(magento)作成
create user magento@localhost IDENTIFIED BY 'パスワード';
ユーザーに権限付与
GRANT ALL ON magento2.* TO magento@localhost IDENTIFIED BY 'パスワード';
反映
flush privileges;

・composerのバージョン確認
composer --version
magento2.4.1のインストールにははcomposer1.x系が必要。もし現在の2.xの一つ前が1.xなら、
composer self-update -r
で戻せる。

・magentoインストール
ダウンロード
sudo php composer.phar create-project --repository=https://repo.magento.com/ magento/project-community-edition /var/www/html
インストール
sudo php bin/magento setup:install --backend-frontname=admin --db-host=localhost --db-name=magento2 --db-user=magento --db-password=password --language=ja_JP --timezone=Asia/Tokyo --currency=JPY --use-rewrites=1 --use-secure=0 --admin-user="admin" --admin-password="password" --admin-email="xxx@mail.com" --admin-firstname="Admin" --admin-lastname="Admin" --elasticsearch-host=localhost --elasticsearch-port=9200 --elasticsearch-username=magento --elasticsearch-password=password --cleanup-database

Username = Public Key
Password = Private Key
上記コマンドが完了すると管理画面のURLが表示されるので内容は控える。
※bin/magento setup:config:set このコマンドでパラメータは後から変更可能。

所有者を変更
chown magento:magento2 -R /var/www/html/*
sudo service apache2 restart
sudo service mysql restart

・Adminページにアクセスすると404 ERRORが出る。
mysql側
update core_config_data set value = 'http://domainname/' where path = 'web/unsecure/base_url';
update core_config_data set value = 'http://domainname/' where path = 'web/secure/base_url';

magento側
php bin/magento config:set web/secure/base_url https://domain.com/
php bin/magento config:set web/unsecure/base_url https://domain.com/
php bin/magento cache:flush

・web setup wizard(mangentoのアップデートやモジュール、Extensionの追加がGUIで行える)が見当たらない。
これは調べてみるとv2.4.0以降は削除されておりCLIで行ってくれ、ということらしい。
The Web Setup Wizard is deprecated as of Magento 2.3.6 and removed in Magento 2.4.0. As an alternative, use the command line to install or upgrade Magento, as well as extensions.

Discussion