インストールガイド · 2 min read · Oct 19, 2025

Debian 12にApacheと無料のLet's Encrypt SSLでPrestashopをインストールする方法

Prestashopは、PHPで書かれた無料のオープンソースのeコマースソリューションです。これにより、自分でオンラインショップをホストおよび作成し、オンラインビジネスを成長させることができます。Prestashopは、包括的なeコマースウェブサイトを作成するための完全にカスタマイズ可能で機能豊富なeコマースソリューションです。Prestashopは現在、世界中で25万以上のオンラインショップに使用されており、65の言語で利用可能です。

このチュートリアルでは、Debian 12サーバーにPrestaShopをインストールする手順をステップバイステップで案内します。LAMPスタック(Apache2、MariaDB、PHP)を使用してPrestaShopをインストールし、その後、Letsencryptを介してSL/TLS証明書でPrestaShopのインストールを保護します。

前提条件

始める前に、以下の準備をしてください:

  • Debian 12サーバー。
  • 管理者権限を持つ非rootユーザー。
  • サーバーのIPアドレスを指すドメイン名。

依存関係のインストール

PrestaShopは、MariaDB/MySQLをデータベースとして使用してPHPで書かれたオンラインストアを作成するためのオープンソースプラットフォームです。次のステップでは、PrestaShopの依存関係をインストールします。これには、LAMPスタック(Apache2、MariaDB、PHP)パッケージといくつかの追加のPHP拡張が含まれます。現在のPrestaShopはまだPHP 8.2をサポートしていないため、サードパーティのリポジトリを介して特にPHP 8.1をインストールします。

まず、次のコマンドを実行して、DebianシステムにサードパーティのPHPリポジトリとGPGキーを追加します。

sudo curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg  
sudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'

次に、以下のaptコマンドを実行して、Debianパッケージインデックスを更新およびリフレッシュします。

sudo apt update

リポジトリが更新されたら、次のコマンドを使用してPrestaShopの依存関係をインストールします。これにより、LAMPスタック(Apache2、MariaDB、PHP 8.1)パッケージ、CertbotCertbot Apacheプラグイン、およびPrestaShopに必要な追加のPHP拡張がインストールされます。

sudo apt install apache2 mariadb-server certbot python3-certbot-apache php8.1 php8.1-curl php8.1-xmlrpc php8.1-soap php8.1-intl php8.1-zip php8.1-cli php8.1-mysql php8.1-common php8.1-opcache php8.1-memcached php8.1-bcmath php8.1-gd php8.1-mbstring php8.1-xml php8.1-gmp php8.1-imagick unzip

インストールを続行するにはyと入力します。

install deps

依存関係がインストールされたら、次のコマンドを使用して各依存関係を確認します。

apache2サービスを確認して、サービスが実行中であることを確認するために、以下のsystemctlコマンドを実行します。

sudo systemctl is-enabled apache2  
sudo systemctl status apache2

以下の結果が表示され、apache2サービスが実行中で有効であることが確認されます。

check apache2

次に、以下のコマンドを使用してmariadbサービスを確認します。

sudo systemctl is-enabled mariadb  
sudo systemctl status mariadb

表示された出力は、mariadbサービスが実行中で有効であることを確認します。

check mariadb

最後に、以下のコマンドを実行してPHPバージョンを確認し、有効な拡張をリストします。

php -v  
php -m

DebianマシンにPHP 8.1がインストールされており、有効な拡張のリストが表示されるはずです。

check php

MariaDBサーバーの設定

PrestaShopの依存関係をインストールしたので、次のステップはmariadb-secure-installationユーティリティを介してMariaDBサーバーのインストールを保護することです。その後、PrestaShop用の新しいデータベースとユーザーを作成する必要があります。

以下のmariadb-secure-installationコマンドを実行して、MariaDBサーバーのインストールを保護します。

sudo mariadb-secure-installation

新しい設定を確認して適用するにはYを入力し、拒否するにはnを入力します。以下は、MariaDBサーバーの設定に関して尋ねられる内容です:

  • unix_socket認証に切り替えますか?nと入力してENTERを押します。デフォルトのMariaDB rootユーザーはすでに保護されています。オプションで、yを入力して有効にすることもできます。
  • rootパスワードを変更しますか?yを入力して新しいMariaDB rootパスワードを設定します。
  • 匿名ユーザーを削除しますか?yを入力して確認します。
  • リモートからのrootログインを禁止しますか?yを入力して確認します。MariaDB rootユーザーを使用している場合、ローカル接続のみが許可されます。
  • テストデータベースとそのアクセスを削除しますか?yを入力してデフォルトのデータベース’test’を削除します。
  • 最後に、yを再度入力してMariaDBサーバーのすべてのテーブル権限を再読み込みし、新しい変更を適用します。

次に、以下のmariadbクライアントコマンドを実行してMariaDBサーバーにログインします。プロンプトが表示されたら、MariaDB rootパスワードを入力します。

sudo mariadb -u root -p

ログインしたら、以下のクエリを実行して新しいデータベースprestashopdb、ユーザーprestashop、パスワードpasswordを作成します。新しいMariaDBデータベースとユーザーは、PrestaShopのインストールに使用されます。

CREATE DATABASE prestashopdb;  
GRANT ALL PRIVILEGES ON prestashopdb.* TO 'prestashop'@'localhost' IDENTIFIED BY 'password';  
FLUSH PRIVILEGES;

次に、以下のクエリを実行してMariaDBユーザーprestashopを確認します。

SHOW GRANTS FOR 'prestashop'@'localhost';

表示された出力は、MariaDBユーザーprestashopがデータベースprestashopdbにアクセスできることを示しています。

check user privileges

最後に、quitと入力してMariaDBサーバーから退出します。

PHPの設定

MariaDBサーバーを設定した後、php.iniファイルを修正してPHPインストールを設定します。その後、PrestaShopの要件を満たすようにPHP設定に関連するすべてが整っていることを確認します。

以下のnanoエディタコマンドを使用して、デフォルトのPHP設定/etc/php/8.1/apache2/php.iniを開きます。

sudo nano /etc/php/8.1/apache2/php.ini

以下の設定を変更し、date.timezoneおよびmemory_limitパラメータをサーバー環境に合わせて調整してください。

date.timezone = Europe/Amsterdam  
max_execution_time = 130  
memory_limit = 256M  
allow_url_fopen = On  
allow_url_include = Off  
post_max_size = 128M  
upload_max_filesize = 128M  
max_input_vars = 5000

ファイルを保存し、作業が完了したらエディタを終了します。

次に、以下のsystemctlコマンドを実行してapache2サービスを再起動し、変更を適用します。

sudo systemctl restart apache2

PHPを設定したので、サーバー環境がPrestaShopのインストールの準備が整っていることを確認します。これは、PrestaShopが提供する環境チェッカーを使用して行うことができます。

/var/www/htmlディレクトリに移動し、以下のwgetコマンドを介して環境チェックスクリプトをダウンロードします。現在の作業ディレクトリにv1.1.tar.gzファイルが表示されます。

cd /var/www/html  
wget https://github.com/PrestaShop/php-ps-info/archive/refs/tags/v1.1.tar.gz

v1.1.tar.gzファイルを抽出し、抽出したディレクトリの名前をcheck-psに変更します。

tar -xf v1.1.tar.gz  
mv php-ps-info-1.1 check-ps

最後に、ウェブブラウザを開き、サーバーのIPアドレスの後にcheck-psパスを追加してPrestaShop環境チェッカースクリプトにアクセスします。例えば、http://192.168.10.15/check-ps/phppsinfo.phpのようにします。

デフォルトのユーザー名prestashopとパスワードprestashopを入力し、サインインをクリックします。

login check-ps

依存関係、PHP設定、およびPHP拡張がPrestaShopの要件を満たしていることを確認してください。満たしていない場合は、ページの推奨に基づいて設定を調整できます。

ps-checker

Prestashopのダウンロード

MariaDBサーバーとPHPが設定されたので、次のステップはPrestaShopのソースコードをダウンロードし、インストールディレクトリを適切な権限と所有権で設定することです。

作業ディレクトリを/var/www/に移動し、以下のwgetコマンドを介してPrestaShopのソースコードをダウンロードします。最新のPrestaShopバージョンを取得するには、PrestaShopのリリースページを確認してください。

cd /var/www/  
wget https://github.com/PrestaShop/PrestaShop/releases/download/8.1.2/prestashop_8.1.2.zip

次に、以下のunzipコマンドを介してPrestaShopのソースコードを抽出します。prestashop.zipファイル内にPrestaShopのソースが表示されるはずです。

unzip prestashop_8.1.2.zip

prestashop.zipファイルを以下のunzipコマンドを使用してターゲットディレクトリ/var/www/prestashopに抽出します。PrestaShopのソースコードはprestashopディレクトリに抽出されるため、PrestaShopのインストールディレクトリは/var/www/prestashopである必要があります。

unzip prestashop.zip -d /var/www/prestashop

最後に、以下のコマンドを実行して、PrestaShopのインストールディレクトリ/var/www/prestashopの適切な所有権と権限を設定します。所有権はwww-dataを使用し、権限はu+rwで、これは所有者がターゲットディレクトリを読み書きできることを意味します。

sudo chown -R www-data:www-data /var/www/prestashop  
sudo chmod u+rw /var/www/prestashop

Apache2仮想ホストの設定

次のステップでは、PrestaShopを実行するために使用される新しいApache2仮想ホスト設定を作成します。その前に、ドメイン名がサーバーのIPアドレスを指していることを確認してください。

まず、以下のコマンドを実行してApacheのrewriteモジュールを有効にします。

sudo a2enmod rewrite

enable rewrite

次に、nanoエディタコマンドを使用して新しい仮想ホスト設定/etc/apache2/sites-available/prestashop.confを作成します。

sudo nano /etc/apache2/sites-available/prestashop.conf

以下の設定を挿入し、ServerNameパラメータ内のドメイン名を変更してください。

  
    ServerAdmin [email protected]  
    DocumentRoot /var/www/prestashop  
    ServerName howtoforge.local  
  
      
        # .htaccessのリライトを有効にする  
        AllowOverride All  
        Options +Indexes  
        Require all granted  
          
        # バックオフィストークンを無効にする  
        # SetEnv _TOKEN_ disabled  
      
  
    ErrorLog /var/log/apache2/prestashop.error.log  
    CustomLog /var/log/apache2/prestashop.access.log combined  

作業が完了したら、ファイルを保存して閉じます。

次に、以下のコマンドを実行して仮想ホストファイルprestashop.confを有効にし、Apache設定を確認します。

sudo a2ensite prestashop.conf  
sudo apachectl configtest

適切なApache設定がある場合、出力にSyntax OKが表示されます。

setup vhost

次に、以下のsystemctlコマンドを実行してapache2サービスを再起動し、変更を適用します。

sudo systemctl restart apache2

最後に、以下のcertbotコマンドを実行してPrestaShopのドメイン名のSSL/TLS証明書を生成します。メールアドレスとドメイン名を自分の情報に変更してください。

sudo certbot --apache --agree-tos --no-eff-email  --redirect --hsts --staple-ocsp --email [email protected] -d howtoforge.local

プロセスが完了すると、仮想ホストファイルprestashop.confは自動的にHTTPSで構成され、SSL/TLS証明書は/etc/letsencrypt/live/howtoforge.localディレクトリに配置されます。

コマンドラインからPrestaShopをインストール

この時点で、Web UIまたはコマンドラインを介してPrestaShopのインストールを完了できます。この例では、コマンドラインを介してPrestaShopのインストールを完了します。

PrestaShopのインストールディレクトリ/var/www/prestashop/installに移動します。

cd /var/www/prestashop/install

以下のようにindex_cli.phpスクリプトを実行して、コマンドラインからPrestaShopのインストールを開始します。ドメイン名、MariaDBデータベースホスト、名前、ユーザー名、パスワードの詳細を変更してください。また、PrestaShopの管理者として使用されるメールアドレスとパスワードも変更してください。

sudo -u www-data php index_cli.php --domain=howtoforge.local --db_server=127.0.0.1 --db_name=prestashopdb --db_user=prestashop --db_password=password --prefix=myps_ [email protected] --password=Passw0rd

インストールが完了すると、出力に「Installation successful」と表示されます。

install prestashop via command line

次に、以下のコマンドを実行して、いくつかのPrestaShopディレクトリの適切な権限を設定します。これにより、www-dataが所有者としてターゲットディレクトリを読み書きできるようになります。

sudo chmod u+rw /var/www/prestashop/var/cache  
sudo chmod u+rw /var/www/prestashop/var/logs  
sudo chmod u+rw /var/www/prestashop/img  
sudo chmod u+rw /var/www/prestashop/mails  
sudo chmod u+rw /var/www/prestashop/modules  
sudo chmod u+rw /var/www/prestashop/translations  
sudo chmod u+rw /var/www/prestashop/upload  
sudo chmod u+rw /var/www/prestashop/download  
sudo chmod u+rw /var/www/prestashop/app/config  
sudo chmod u+rw /var/www/prestashop/app/Resources/translations

次に、以下のコマンドを実行して/var/www/prestashop/installディレクトリを削除し、PrestaShopのインストールを保護します。

sudo rm -rf /var/www/prestashop/install

その後、ウェブブラウザを開き、PrestaShopのドメイン名にアクセスします。例えば、http://howtoforge.local/のようにします。インストールが成功すると、安全なHTTPS接続にリダイレクトされ、PrestaShopのインストールのデフォルトのホームページが表示されます。

prestashop homepage

次に、PrestaShopのドメイン名の後に管理パスを追加してアクセスします。例えば、https://howtoforge.local/admin/のようにします。すべてがうまくいけば、PrestaShopのログインページにリダイレクトされます。また、PrestaShopのデフォルトのURLパスがadmin051rgjztgtkvgcie6dpに変更されていることがわかります。

管理ユーザー名とパスワードを入力し、ログインをクリックします。

login prestashop

適切な管理ユーザー名とパスワードがあれば、PrestaShopの管理ダッシュボードが表示されます。

prestashop dashboard

もう一つの考慮事項として、以下のコマンドを実行してPrestaShopの管理ログインを確認できます。

ls /var/www/prestashop

以下の出力は、PrestaShopの管理ページがadmin051rgjztgtkvgcie6dpで利用可能であることを示しています。

check ps admin

結論

結論として、Debian 12にPrestaShopをステップバイステップで成功裏にインストールしました。LAMPスタック(Apache2、MariaDB、PHP)を使用してPrestaShop 8をインストールし、SSL/TLS証明書でPrestaShopのインストールを保護しました。さらに、コマンドラインを介してPrestaShopのインストールを開始する方法も学びました。これで、新しいテーマや追加の拡張機能を追加してPrestaShopのインストールを拡張できます。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。