How to Install and Configure Git and GitHub on Ubuntu 18.04/ Ubuntu 20.04(Linux)
目次:
PrestaShopは、無料のオープンソースの電子商取引プラットフォームです。 PHPとMySQLに基づいており、無料のプレミアムプラグインとテーマで拡張できます。
PrestaShopは、直感的な管理インターフェイス、複数の支払いゲートウェイ、多言語、分析、レポートなどの機能を備えており、多くのオンラインマーチャントに最適なプラットフォームです。
このチュートリアルでは、Ubuntu 18.04サーバーにPrestaShopをインストールする方法を示します。 NginxをWebサーバーとして使用し、最新のPHP 7.2とMySQL / MariaDBをデータベースサーバーとして使用します。
前提条件
このチュートリアルを続行する前に、次の前提条件を満たしていることを確認してください。
- パブリックサーバーのIPを指すドメイン名を持っています。
example.com
を使用しexample.com
。Nginxは、次の手順に従ってUbuntuサーバーにインストールされます。ユーザー情報を暗号化するためにドメインにインストールされたSSL証明書。 以下の手順に従って、無料のLet's Encrypt SSL証明書をインストールできます。
システムパッケージを最新バージョンに更新し、unzipユーティリティをインストールします。
sudo apt update && sudo apt upgrade
sudo apt install unzip
MySQLデータベースの作成
PrestaShopは、その情報をMySQLデータベースに保存します。
サーバーにMySQLまたはMariaDBがインストールされている場合は、この手順をスキップできます。 それ以外の場合は、次のように入力して、MySQL 5.7サーバーパッケージをUbuntuのデフォルトリポジトリからインストールします。
sudo apt install mysql-server mysql-client
MySQLの新規インストールの場合、
mysql_secure_installation
コマンドを実行して、MySQLサーバーのセキュリティを改善することをお勧めします。
データベースを作成するには、mysqlシェルにログインします。
sudo mysql
MySQLシェル内から次のSQLステートメントを実行して、
prestashop
という名前の新しいデータベースを作成します。
CREATE DATABASE prestashop;
次に、
prestashop
という名前のMySQLユーザーアカウントを作成し、次のコマンドを実行してユーザーに必要な権限を付与します。
GRANT ALL ON prestashop.* TO 'prestashop'@'localhost' IDENTIFIED BY 'change-with-strong-password';
change-with-strong-password
を
change-with-strong-password
して
change-with-strong-password
を変更
change-with-strong-password
ことを忘れないでください。
完了したら、次を入力してMySQLコンソールを終了します。
PHPのインストールと構成
PHP 7.2はUbuntu 18.04のデフォルトのPHPバージョンであり、PrestaShopで完全にサポートおよび推奨されています。
次のコマンドを実行して、PHPおよび必要なすべてのPHPモジュールをインストールします。
sudo apt install php7.2-common php7.2-cli php7.2-fpm php7.2-opcache php7.2-gd php7.2-mysql php7.2-curl php7.2-intl php7.2-xsl php7.2-mbstring php7.2-zip php7.2-bcmath php7.2-soap
インストールプロセスが完了すると、PHP-FPMサービスが自動的に開始されます。 次のように入力して確認できます。
sudo systemctl status php7.2-fpm
出力は次のようになります。
* php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2019-03-24 11:53:33 PDT; 14s ago Docs: man:php-fpm7.2(8) Main PID: 15853 (php-fpm7.2) Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
以下の
sed
コマンドを実行して、推奨されるPHPオプションを設定します。
sudo sed -i "s/memory_limit =.*/memory_limit = 1024M/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/zlib.output_compression =.*/zlib.output_compression = on/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/max_execution_time =.*/max_execution_time = 18000/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php/7.2/fpm/php.ini
PrestaShopをダウンロードする
この記事の執筆時点で、PrestaShopの最新の安定バージョンはバージョン
1.7.6.2
です。
次のwgetコマンドを使用して、PrestaShopダウンロードページからPrestaShopの最新バージョンをダウンロードします。
cd /tmp
wget
ダウンロードが完了したら、PrestaShopファイルを保持するディレクトリを作成します。
sudo mkdir -p /var/www/html/example.com
次に、PrestaShopアーカイブを抽出します。
unzip prestashop_*.zip
このアーカイブには、すべてのPrestaShopファイルを含む別のzipファイル「prestashop.zip」が含まれています。 ドメインのドキュメントルートディレクトリにファイルを抽出します。
sudo unzip prestashop.zip -d /var/www/html/example.com
次の
chown
コマンドを使用して、Webサーバーがサイトのファイルとディレクトリにフルアクセスできるように、正しいアクセス許可を設定します。
sudo chown -R www-data: /var/www/html
Nginxの構成
すでに、UbuntuサーバーにSSL証明書がインストールされたNginxが既にあるはずです。 そうでない場合は、このチュートリアルの前提条件を確認してください。
テキストエディターを開き、次のファイルを作成します。
sudo nano /etc/nginx/sites-available/example.com
/etc/nginx/sites-available/example.com
server { listen 80; listen 443 ssl http2; server_name example.com www.example.com; root /var/www/html/example.com; index index.php; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; # Cloudflare / Max CDN fix location ~* \.(eot|otf|ttf|woff(?:2)?)$ { add_header Access-Control-Allow-Origin *; } # Do not save logs for these location = /favicon.ico { auth_basic off; allow all; log_not_found off; access_log off; } location = /robots.txt { auth_basic off; allow all; log_not_found off; access_log off; } # Images rewrite ^/()(-*)?(-+)?/.+.jpg$ /img/p/$1/$1$2$3.jpg last; rewrite ^/()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$1$2$3$4.jpg last; rewrite ^/()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$1$2$3$4$5.jpg last; rewrite ^/()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg last; rewrite ^/()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg last; rewrite ^/()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg last; rewrite ^/()()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg last; rewrite ^/()()()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg last; rewrite ^/c/(+)(-*)(-+)?/.+.jpg$ /img/c/$1$2$3.jpg last; rewrite ^/c/(+)(-+)?/.+.jpg$ /img/c/$1$2.jpg last; # AlphaImageLoader for IE and fancybox rewrite ^images_ie/?(+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 last; # Web service API rewrite ^/api/?(.*)$ /webservice/dispatcher.php?url=$1 last; # Installation sandbox rewrite ^(/install(?:-dev)?/sandbox)/(.*) /$1/test.php last; #Change this block to your admin folder location /admin_CHANGE_ME { if (!-e $request_filename) { rewrite ^/.*$ /admin_CHANGE_ME/index.php last; } } # File security #.htaccess.DS_Store.htpasswd etc location ~ /\. { deny all; } # Source code directories location ~ ^/(app|bin|cache|classes|config|controllers|docs|localization|override|src|tests|tools|translations|travis-scripts|vendor|var)/ { deny all; } # Prevent exposing other sensitive files location ~ \.(yml|log|tpl|twig|sass)$ { deny all; } # Prevent injection of php files location /upload { location ~ \.php$ { deny all; } } location /img { location ~ \.php$ { deny all; } } # PHP FPM part location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.2-fpm.sock; } }
example.comをPrestaShopドメインに、「admin_CHANGE_ME」をadminディレクトリに置き換えることを忘れないでください。 Prestashopルートディレクトリの内容をリストすることにより、ディレクトリ名を見つけることができます。
sudo ls -l /var/www/html/example.com | grep admin
また、SSL証明書ファイルへの正しいパスを使用していることを確認してください。 この構成で使用されるスニペットは、このガイドで作成されます。
Nginxサービスを再起動する前に、構文エラーの構成を確認してください。
sudo nginx -t
出力は次のようになります。
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
最後に、次のように入力してNginxサービスを再起動します。
PrestaShopのインストール
PrestaShopがダウンロードされ、サーバー構成が完了したので、Webインターフェースからインストールを完了できます。
ブラウザを開き、ドメインを入力すると、次のような画面が表示されます。
セキュリティ上の理由から、インストールディレクトリを削除する必要があります。 これを行うには、ターミナルに戻り、次の
rm
コマンドを入力します。
sudo rm -rf /var/www/html/example.com/install
PrestaShop管理ダッシュボードにアクセスするには、「ストアの管理」ボタンをクリックします。 電子メールとパスワードを入力すると、管理ダッシュボードにリダイレクトされます。
ここから、PrestaShopインストールのカスタマイズを開始し、新しい製品を追加できます。
結論
Ubuntu 18.04サーバーにPrestaShopを正常にインストールしました。 PrestaShopのドキュメントは、PrestaShopインストールの管理方法について詳しく知るための出発点として適しています。
Ubuntu Prestashop mysql php nginx ecommerceファーストルック:Ubuntu 7.10デスクトップLinux

「Gutsy Gibbon」リリースは、フラッシュと機能をもたらし、デスクトップLinuxのリーダーとしてUbuntuをリードしています。 Webサイトやデータベースを実行するためのLinuxディストリビューションの選択は簡単です。 Linuxは長年にわたってサーバをうまく処理してきました。しかし、デスクトップ上でLinuxを正しく利用することは常に困難でした。そのため、Ubuntuは3年前に初めて登場したときにこのような話題を呼びました。 Ubuntuバージョン7.10(コードネームGutsy Gibbon)は、グラフィクスの改善、ソフトウェアインストールの簡素化、およびソフトウェアのマイナーな改良など、過去の成功を基盤にしています。
デスクトップLinux Face-Off:Ubuntu 8.04対Fedora 9

世界最大の2つの新バージョンLinuxのディストリビューションが勢ぞろいしています。彼らはどのようにマッチするのですか?
Ubuntu 9.04 Beta:クイックルック

Ubuntu Jaunty Jackalopeの予定されたベータ版が到着しました。ここでは、どのように形作っているかを見ていきます。