Magento は、PHP で書かれたオープンソースの e コマース プラットフォームです。 Magento は、上位 3 つの e コマース プラットフォームに属し、e コマース業界をリードするプラットフォームの 1 つです。 Magento の基本的な機能には、製品管理、在庫管理、注文管理、レポート作成などがあります。多くの大企業が、高度にカスタマイズ可能でスケーラブルで、高度なセキュリティと seo フレンドリーを備えているため、e コマース プラットフォームとして Magento を選択しています。
このチュートリアルでは、Ubuntu 22.04 に Magento 2.4.5 をインストールする方法について説明します。
始めましょう。
1 前提条件
- Ubuntu 22.04
- 2 GB 以上の RAM
2 システムの更新
インストールを開始する前に、システムを更新する必要があります。
sudo apt update -y && apt upgrade -y
3 PHP および PHP 拡張機能のインストール
Magento 2.4.5 に必要な PHP バージョンは PHP 8.1 です。このインストールでは、デフォルトのバージョン セットである Ubuntu 22.04 リポジトリを使用して PHP 8.1 をインストールします。 PHP 8.1 と Magento に必要な拡張機能をインストールしましょう。
sudo apt install php libapache2-mod-php php-bcmath php-curl php-fpm php-gd php-intl php-mbstring php-mysql php-soap php-xml php-xsl php-zip php-cli
Magento を適切に実行するために必要な PHP 値の一部を変更してみましょう。
最初に PHP 構成ファイルの場所を確認しましょう。
sudo php --ini | grep "Loaded Configuration File"
Output:
Loaded Configuration File: /etc/php/8.1/cli/php.i
PHP 構成ファイルを編集します。
sudo nano /etc/php/8.1/cli/php.ini
次の値で構成ファイルを変更します。
memory_limit = 1G
upload_max_filesize = 128M
zlib.output_compression = on
max_execution_time = 18000
realpath_cache_size = 10M
realpath_cache_ttl = 7200
構成ファイルを保存して終了します。
4 データベースのインストールと構成
Magento 2.4.5 は、MariaDB 10.4 または MySQL 8 をサポートしています。このガイドでは、MySQL 8.0 を使用します。
MySQL をインストールしましょう。
sudo apt install mysql-server
MySQL のインストールを保護しますが、その前に、以下の問題を回避するために最初に MySQL ルート パスワードを設定する必要があります:
…失敗!エラー:使用される認証方法が MySQL サーバーに認証データを保存しないため、SET PASSWORD はユーザー「root'@'localhost」には意味がありません。認証パラメータを変更する場合は、代わりに ALTER USER の使用を検討してください .
MySQL root パスワードを設定しましょう。
sudo mysql
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'mysecretpassword';
mysql> exit
MySQL のインストールを保護しましょう。
sudo mysql_secure_installation
Output:
Securing the MySQL server deployment.
Enter password for user root:
The 'validate_password' component is installed on the server.
The subsequent steps will run with the existing configuration
of the component.
Using existing password for root.
Estimated strength of the password: 50
Change the password for root ? ((Press y|Y for Yes, any other key for No) : N
... skipping.
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Success.
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Success.
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
- Dropping test database...
Success.
- Removing privileges on test database...
Success.
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Success.
All done!
MySQL サービスを再起動してください。
sudo systemctl restart mysql
Magento インスタンス用のデータベースを作成しましょう。
sudo mysql -u root -p
このコマンドでは、MySQL ルート パスワードを入力する必要があります。
ただし、データベースの作成に進む前に、まずパスワード ポリシーを「LOW」に変更しましょう。 厳格なパスワードポリシーを使用したくない場合、これはオプションです。
mysql> SET GLOBAL validate_password.policy = 0;
Magento 用のデータベースを作成しましょう。
mysql> CREATE USER 'magento_user'@'localhost' IDENTIFIED BY 'mypassword';
mysql> GRANT ALL ON magento2.* TO 'magento_user'@'localhost';
mysql> flush privileges;
mysql> exit
5 Elastic Search のインストール
Magento 2.4 以降、Elasticsearch を使用するようにすべてのインストールを構成する必要があります。
Elasticsearch のインストールを開始しましょう。
sudo apt install apt-transport-https ca-certificates gnupg2
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'
sudo apt update
sudo apt install elasticsearch
Elasticsearch を開始して有効にします。
sudo systemctl enable elasticsearch --now
ステータスを確認してください。
sudo systemctl status elasticsearch
6 Composer のインストール
Magento は PHP に基づいており、実行するにはさまざまな種類のパッケージが必要であり、Magento の実行に必要なパッケージをインストールするには、composer というパッケージ マネージャーをインストールする必要があります。
composer をインストールするには
curl -sS https://getcomposer.org/installer -o composer-setup.php
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
バージョンを確認してください。
sudo composer --version
Output:
Composer version 2.4.3 2022-10-14 16:56:41
7 Web サーバーのインストールと構成
Nginx と Apache Web サーバーで Magento をセットアップします。
アパッチの場合 .
最初に Apache Web サーバーをインストールします。
sudo apt install apache2
Apache を起動して有効にします。
sudo systemctl enable apache2 --now
仮想ホストをセットアップします。
sudo nano /etc/apache2/sites-available/magento.conf
以下の内容を追加してください。
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName domain.com
ServerAlias www.domain.com
DocumentRoot /var/www/magento2/pub
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory "/var/www/">
AllowOverride all
</Directory>
</VirtualHost>
ファイルを保存して終了します。
domain.com の変更を忘れないでください
作成した仮想ホストを有効にしましょう。
a2ensite magento.conf
次に、mod_rewrite モジュールを有効にします。
a2enmod rewrite
その後、Apache を再起動します。
systemctl restart apache2
Nginx の場合 .
最初に Nginx をインストールしましょう。
sudo apt install nginx -y
Nginx を有効にして起動します。
sudo systemctl enable nginx --now
サーバー ブロックを作成します。
sudo nano /etc/nginx/sites-available/magento.conf
以下を挿入してください:
upstream fastcgi_backend {
server unix:/run/php/php8.1-fpm.sock;
}
server {
server_name domain.com www.domain.com;
listen 80;
set $MAGE_ROOT /var/www/magento2;
set $MAGE_MODE developer; # for production change the developer to production
access_log /var/log/nginx/magento2-access.log;
error_log /var/log/nginx/magento2-error.log;
include /var/www/magento2/nginx.conf.sample;
}
注: 「domain.com」を忘れずに変更してください 「.
ファイルを保存して終了します。
Nginx 構成ファイル (サーバー ブロック) を有効にしましょう。
sudo ln -s /etc/nginx/sites-available/magento.conf /etc/nginx/sites-enabled/
Nginx を再起動します。
sudo systemctl restart nginx
8 Magento 2.4.5 をダウンロードしてインストール
ほとんどの場合、マーケットプレイス (https://marketplace.magento.com/) を使用してアクセス キーを作成し、Magento をインストールすることをお勧めします。
アクセス キーを作成するには、以下の手順に従います。
- Marketplace アカウントへの最初のログイン
- [名前] -> [プロフィール] に移動
- Marketplace -> My Products -> Access Keys に移動します
- Magento 2 タブで、[新しいアクセス キーの作成] をクリックします。 「
- ポップアップのテキスト ボックスに任意の名前を入力し、[OK] をクリックします。
- これで、アクセス キーが生成されます。
Magento 2.4.5 をインストールしましょう
composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition=2.4.5 /var/www/magento2
ユーザー名とパスワードを入力するよう求められます。ユーザー名とパスワードはあなたの public_key です と private_key
Username: YOUR_PUBLIC_KEY
Password: YOUR_PRIVATE_KEY
ログイン情報を入力すると、資格情報をローカル ファイルに保存するかどうかを尋ねられます。はいと答えてください。
Do you want to store credentials for repo.magento.com in /root/.config/composer/auth.json ? [Yn] Y
Magento に移動 ルート ディレクトリ。
cd /var/www/magento2/
Magento 2 インストール コマンドを実行します。
bin/magento setup:install \
--base-url=http://domain.com \
--db-host=localhost \
--db-name=magento2 \
--db-user=magento_user \
--db-password=mypassword \
--admin-firstname=admin \
--admin-lastname=admin \
[email protected] \
--admin-user=admin \
--admin-password=myadminpassword \
--language=en_US \
--currency=USD \
--timezone=America/Chicago \
--use-rewrites=1
注: 値を変更することを忘れないでください (太字のテキストを参照) ) 独自の値セットに基づいています。
インストール プロセスの後、Magento 2.4.5 インスタンスの管理リンクが表示されます。
[SUCCESS]: Magento installation complete.
[SUCCESS]: Magento Admin URI: /admin_1lswn5
Nothing to import.
9 Cron ジョブと許可を設定する
Magento は cron ジョブを使用して一部の操作を自動化します。 Magento cron をセットアップするには、このコマンドを実行します。
sudo bin/magento cron:install
それでは、Magento ディレクトリのファイル許可を修正しましょう。
sudo chown -R www-data:www-data /var/www/magento2
Magento インスタンスが起動して実行されているはずです。
注: Magento インスタンスへのログインに問題がある場合は、以下のコマンドを実行して 2 要素認証を無効にする必要があります:
sudo bin/magento module:disable Magento_TwoFactorAuth
おめでとうございます Magento 2.4.5 が正常にインストールされました http://domain.com で Magento インスタンスにアクセスできるようになりました
10 まとめ
このチュートリアルでは、別の Web サーバーを使用して Magento 2.4.5 をインストールする方法について学習しました。 Ubuntu 22.04 を使用している場合は、Magento 2.4.4 に関する記事を確認してください。