GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu20.04LTSにNginxを使用してBoltWireCMSをインストールする方法

Boltは、人気のあるPHPフレームワーク上に構築された軽量のコンテンツ管理システム(CMS)です。 Boltは、HTMLやその他のプログラミング言語を学ぶことを心配せずに、独自のWebサイトを維持したい中小企業に最適です。 Boltは、堅牢なWikiマークアップ、eコマース、フォトギャラリーとアルバムビルダー、オーディオギャラリーとプレーヤー、ゲストブックなどの高度な機能を備えています。

Boltwireは、CMSを必要とするあらゆる規模の個人およびグループにとって完全に無料であることで際立っています。 Joe CasabonaはBoltwireの作成者であり、他の人が彼のオープンソースプロジェクトを最大限に活用できるように支援することで彼の情熱を共有しています。 Boltは、200か国以上で500,000を超えるWebサイトを管理するために使用されています。その開発者はボランティアであり、すべてのユーザーがフィードバックを提供し、プロジェクトの開発に貢献することでプロジェクトに参加することを期待しています。

Boltにはいくつかのユニークな機能があります:

  • 動的ページ生成:データベースからページをフェッチするときに見つかったデータに基づいてページをアセンブルできます。たとえば、ユーザーがオンラインジャーナルに新しいエントリを投稿すると、Webページ全体を更新しなくても、ブログの他のエントリを動的に追加できます。これにより、特にカテゴリごとに大量のページやメディアアイテム(フォトギャラリー内のすべての写真など)を使用する場合に、読み込み時間を短縮できます。
  • コンテンツの管理と管理:複数のユーザーがコンテンツを管理できるため、各ユーザーはページの特定の部分のみを変更できます。また、表示または編集できる内容を制限することもできます。たとえば、ほとんどの人は新しい記事を投稿したりコメントを自由に追加したりすることは許可されていません。これはサイト管理者用に予約されています。管理者が特に指定しない限り、読者は最初にログインしなくても記事を表示できます。
  • 使いやすさ:Boltは、JoomlaやDrupalなどの他のCMSと比較して、Webページの作成に必要な労力を大幅に削減します。 Boltに組み込まれているウィザードは、構成プロセスの多くを自動化するため、内部での動作について心配する必要はありません。
  • 簡単な拡張性:Boltはオープンソースであるため、Boltに機能を拡張または追加する新しいモジュールを簡単に作成できます。多くの場合、新しい機能がコアソフトウェアに統合されているため、さらに使いやすくなっています。現在Modboomで利用可能な約40の拡張機能により、PHPプログラミングに深く踏み込むことなく、Boltの任意の部分を簡単に拡張できます。
  • BoltWireには、英語(デフォルト)、ドイツ語、イタリア語、日本語、ポーランド語、ポルトガル語、スペイン語など、さまざまな言語があります。上記の言語の標準のBoltWireパッケージに加えて、完全なローカリゼーションはフランス語(100%)とオランダ語(50%以上)でも利用できます。

不利な点は、現地の言語で内部で物事がどのように機能するかについて質問がある場合、ヘルプフォーラム以外に利用できるサポートがほとんどないことです。この点で、物事を思い通りに機能させるのはあなた自身の責任です。ただし、テキストエディタの使用に慣れていて、自分でBoltに取り組む時間があれば、シンプルでありながらプロ並みのWebサイトを数分で作成することを妨げるものは何もありません。

このガイドでは、Ubuntu20.04サーバーにBoltWireをインストールする方法を学習します。

前提条件
  • Ubuntu20.04を実行している新しいサーバー。
  • 完全なSSHルートアクセスまたはsudo権限を持つユーザー。
  • ドメイン名が登録されており、サーバーを指しています。
はじめに

まず、SSHを使用してUbuntuにログインします。

ssh [email protected] _Address -p Port_number

rootはUbuntuのデフォルトのユーザーです。別のユーザーを使用する場合は、「root」を自分のユーザーの名前に置き換えてください。

IP_Addressは、サーバーのアドレスです。これは

を使用して確認できます

ホスト名-コマンドラインで。 SSHの場合、Port_numberは22である必要があります。

hostname -I

「-p」は、指定されたポートを使用するようにsshに指示します。ポート番号を指定しない場合は、22が使用されます。

ファイアウォールの背後にいる場合は、ポート22がブロックされている可能性があります。その場合は、Port_numberを2222などに変更してください。

システムの更新

次のコマンドを使用して、システムに適切なUbuntuバージョンがインストールされているかどうかを確認できます。

sudo lsb_release -a

出力例:

パッケージをインストールする前に、システムを更新することを常にお勧めします。

sudo apt-get update && apt-get upgrade -y

-yはコマンドであり、更新プロセス中にすべての質問に自動的に「はい」と答えます。 apt-get updateはパッケージリストを更新し、apt-getupgradeはシステムをアップグレードします。

出力例:

ダウンロードしてインストールする必要のあるパッケージの数によっては、更新に時間がかかる場合があります。更新が完了すると、サーバーを再起動するように求められます。以下のコマンドを実行して、更新後にシステムを再起動します。

sudo reboot
必要なパッケージのインストール

Boltをインストールするには、システムにいくつかのパッケージをインストールする必要があります。一部のパッケージは特定の順序でインストールされます。この場合、以下のコマンドを使用して、ボルトのインストールに必要なすべてのパッケージをインストールします。

sudo apt install -y curl wget vim git unzip socat bash-completion apt-transport-https

socatはプロキシ用であり、BoltがWebサーバー上で実行されているように見えます。

apt-transport-httpsを使用すると、sudoaptupdateなどのコマンドライン操作をhttps接続で機能させることができます。 bash-completionは、最初の数文字を入力した後、bashがコマンドをオートコンプリートできるようにするプログラムです。

curlはパッケージのダウンロードに使用され、wgetは最新バージョンのBoltなどのファイルをWebサイトからダウンロードするために使用されます。

出力例:

Nginxのインストール

Nginxは、BoltでWebサイトを管理するためのリバースプロキシとして使用されます。 Nginxは軽量で、構成が簡単で高速です。以下のコマンドを実行してNginxをインストールします

sudo apt-get install nginx

プロンプトが表示されたら「y」と入力すると、インストールプロセスが自動的に開始されます。

出力例:

インストールが完了したら、nginxサービスを開始し、システムの起動時に実行できるようにします

sudo systemctl start nginx
sudo systemctl enable nginx

Nginxが現在実行されているかどうかを確認および確認するには、ターミナルでこのコマンドを使用します。

sudo systemctl status nginx

出力例:

Nginxの構成

BoltWireCMSは/var/www/ディレクトリにインストールされます。 BoltWire CMSにアクセスしてテストするには、すべての静的コンテンツリクエストとモジュールおよびプラグインファイルリクエストに対して、リクエストをwebrootフォルダーパス/ var /www/に自動的にルーティングするようにNginxサーバーブロックを構成する必要があります。

次のコマンドを実行して、bolt.confという名前の新しい構成ファイルを作成します

sudo nano /etc/nginx/sites-available/bolt.conf

構成ファイルに次の内容を入力します。

server {
listen 80;
 listen [::]:80; 
 root /var/www/bolt; 
 index index.php index.html index.htm; 
 server_name bolt.example.com;

 location / { 
  try_files      $uri $uri/ /index.php?$query_string;
  } 

 location ~ [^/]\.php(/|$) { 
  try_files      /index.php =404;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  fastcgi_index      index.php;
 fastcgi_pass       unix:/var/run/php/php7.2-fpm.sock;
  include         fastcgi_params;
  fastcgi_param  PATH_INFO    $fastcgi_path_info;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  } 

location = /bolt { 
 try_files        $uri /index.php?$query_string; 
 } 

location ^~ /bolt/ { 
 try_files         $uri /index.php?$query_string; 
 } 

}

作成したNginxサーバーブロックは、/ var /www/ディレクトリに設定されているデフォルトのドキュメントルートを使用します。別のサーバー環境でBoltWireCMSを実行している場合は、confファイルを編集し、それに応じてドキュメントルートのパスを置き換えます。

server_nameディレクティブは、NginxWebサーバーがリッスンするURLを構成します。 Bolt.example.comを実際のサーバードメイン名またはIPアドレスに置き換えます。

try_files $ uri $ uri / /index.php?$query_string;このディレクティブを使用すると、ファイルパス要求が見つかった場合に直接処理できます。たとえば、ユーザーがブラウザからBoltWire CMSのホームページにアクセスしようとすると、/ index.phpがインデックスファイルとして使用され、存在しない場合はPHPにフォールバックします-FPMは404NotFound応答を返します。

変更を加えてbolt.confファイルに保存したら、Nginxをリロードして再起動し、新しい構成を有効にします。

sudo systemctl reload nginx
sudo systemctl restart nginx

次のコマンドを実行して、nginxの構成を確認します。

sudo nginx -t

出力例:

MySQLのインストール

BoltWire CMSには少なくともバージョン4.2のMySQLサーバーが必要ですが、BoltWireCMSは5.x+では動作しません。

したがって、いくつかのオプションがあります。Microsoft SQL Serverなどのリモートデータベースサーバーを使用するすべてのWebサーバーマシンにMySQLを実装する(非推奨)MySQLのバージョンをアップグレードします。最初のオプションはかなり簡単ですが、アップグレードの種類は複雑です。

LAMPスタック(Linux、Apache、MySQL、PHP)を使用している場合、UbuntuにはすでにMySQLサーバーがリポジトリに含まれているため、MySQLを個別にインストールする必要はありません。

以下のコマンドを実行してMySQLをインストールします:

sudo apt -y install mysql-server

出力例:

インストールが完了したら、以下のコマンドを実行して、このセッションのMySQLデーモン(MySQLサーバー)を起動し、システムの起動時に実行できるようにします。

sudo systemctl start mysql
sudo systemctl enable mysql 
データベースの作成

コマンドラインを使用して、boltというデータベースを作成します。

以下のコマンドを実行して、mysqlに接続し、データベースを作成します。

sudo mysql -u root -p 

mysqlのrootパスワードを入力します。これで、mysqlコンソールにログインしました。データベースとデータベースユーザーを作成するには、次のコマンドを実行します。

CREATE DATABASE bolt;
CREATE USER 'bolt'@'localhost' IDENTIFIED BY 'mypassword';
GRANT ALL ON bolt.* TO 'bolt'@'localhost'; 
FLUSH PRIVILEGES; 
exit

CREATE USER'bolt' @'localhost' IDENTIFIED BY'mypassword'は、パスワードが'mypassword'であるユーザー'bolt'を作成します。ここでは、「mypassword」という単語の代わりに安全なパスワードを使用してください。フラッシュ特権は、上記で作成された付与特権テーブルを再ロードします。

PHPのインストール

BoltWire CMSには、PHPバージョン7以降とその開発ヘッダーが必要です。必要なPHPバージョン(7.2)を使用してppa:ondrej / php PPAを追加します。これは、必要なPHPバージョンに自分で変更できます。次のコマンドを実行して、ppaを追加し、apt-getを更新します

sudo apt -y install software-properties-common 
sudo add-apt-repository ppa:ondrej/php 
sudo apt-get update

以下のコマンドを実行してPHP7.2をインストールします。

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-zip php7.2-pgsql php7.2-sqlite3 php7.2-curl php7.2-gd php7.2-mysql php7.2-intl php7.2-json php7.2-opcache php7.2-xml

php7.2-cliはPHP7.2のコマンドラインインターフェースであり、php7.2-commonを使用すると、php7.2-extensions、ウェブサーバー(PHP)モジュール、および標準のCLI拡張機能がインストールされます。 php7.2を使用すると、-fpmはFastCGI Process Managerをインストールします。これは、WebサーバーからPHPアプリケーションを実行する一般的な方法です。 php7.2-mbstringは、BoltWireCMSに必要なマルチバイト文字列関数をインストールします。 php7.2-opcacheは、PHP7.2のオペコードキャッシュをインストールします。これにより、コンパイルされたスクリプトをキャッシュすることで、パフォーマンスが向上し、Webサーバーの負荷が軽減されます。 php7.2-xmlは、BoltWireCMSを使用するために必要なPHP7.2のXML処理拡張機能をインストールします。

出力例:

PHP 7.2をインストールした後、以下のコマンドを実行してPHP7.2のバージョンを確認します。

php -v 

出力例:

次に、nanoテキストエディタを使用してNginxのPHPデフォルト設定ファイルを開きます。

sudo nano /etc/php/7.2/fpm/php.ini

次に、次の行に変更を加えます。

file_uploads = On
allow_url_fopen = On
memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = America/St. Louis
  • file_uploads =Onをオンにすると、BoltWireCMSへのファイルアップロード機能が有効になります。
  • allow_url_fopen =Onは、リモートWebサーバーからアップロードされたファイルを使用したリクエストで直接URLまたはHTTPリダイレクトを許可します。
  • memory_limit =256Mは、Nginxワーカープロセスに設定するPHP 7.2のメモリ制限(MB単位)です。メモリ消費量の多いPHPスクリプトを実行すると、phpランタイムエラーが発生する可能性があります。
  • upload_max_filesize =100Mは、BoltWire CMSサイトへの単一のアップロードファイルの最大サイズです。無制限のサイズのファイルのアップロードを有効にする場合は、この値を0に変更してください。
  • max_execution_time =360は、PHPスクリプトを実行するための秒単位の最大実行時間です。スクリプトがこの値を超えると、スクリプトは終了します。
  • date.timezone =America/St。 Louis、BoltWireCMSシステムで顧客の日付と時刻の値を正しく表示するための現在地のタイムゾーン。

php7.2-fpmを再起動して、上記の変更を有効にします。

sudo service php7.2-fpm restart

必要なPHP7.2および関連パッケージはこれで十分です。次のステップに進みましょう。

Composerのインストール

BoltWire CMSでは、Composerが必要な外部ライブラリをWebサイトに追加する必要があるため、このチュートリアルを続行する前に、まずライブラリをインストールする必要があります。 Composerは、PHPプロジェクトの依存関係を管理するPHPのパッケージマネージャーです。これは、NodeJSのnpmまたはrubygemsに似ています。

まず、ホームディレクトリに移動して、インストーラーをダウンロードします。

sudo curl -sS https://getcomposer.org/installer -o composer-setup.php

以下のコマンドはComposerをインストールします:

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

上記は、Composerをシステム全体のバイナリとして/ usr / local/binディレクトリにダウンロードしてインストールします。

コマンドの/usr/ local / bin部分を〜/ user _

に置き換えることで、ユーザー専用にComposerを構成することもできます。

インストールが完了したら、以下のコマンドを実行して、インストールが成功したかどうかをテストできます。

composer

出力例:

ボルトのインストール

必要なパッケージがすべてインストールされたので、Boltのインストールに進むことができます。

まず、/ var / www /ディレクトリに移動し、以下のコマンドを使用してGitHubから最新バージョンのBoltCMSをダウンロードします。

cd /var/www/
sudo git clone https://github.com/bolt/bolt.git

出力例:

ダウンロードすると、BoltCMSのcomposer構成ファイルである「composer.json」という名前の単一ファイルを含むboltという名前のディレクトリが表示されます。

次に、boltディレクトリに移動し、そこからBoltをインストールします。

cd bolt
sudo composer install

このコマンドは、Composerパッケージマネージャーを使用して、必要なすべてのBoltソースファイルと依存関係を/ var / www/boltにインストールします。

出力例:

次のステップは、次のコマンドを実行してBolt作業ディレクトリを設定することです。

sudo chown -R www-data:www-data /var/www/bolt
sudo chmod -R 755 /var/www/bolt

上記のコマンドは、Boltファイルの所有権をNginxユーザーwww-dataに変更するため、BoltURLにアクセスしたときにファイルの読み取りと書き込みを行うことができます。

次のステップは、ボルト構成ファイルを構成することです:

sudo cp app/config/config.yml.dist app/config/config.yml

BoltWireCMSへのアクセス

これで、LinuxまたはWindowsコンピューターのブラウザーから次のURLを使用して、BoltWireCMSにアクセスできるようになります。

http:// localhost:8000/boltまたはhttp://bolt.example.com/bolt

次のようなデフォルトのBoltWireCMSランディングページが表示されます。

以下のようなBoltWiredasboardにアクセスできるこのフォームに、必要なすべての情報を入力してください。

これで、BoltWireCMS用のLinuxサーバーが正常に構成されました。

新しくインストールしたBoltWireCMSにアクセスしようとしたときに問題が発生した場合。一般的なエラーとその考えられる解決策のリストは次のとおりです。

  • "アクセスが拒否されました-エラー "。これは、BoltWire CMSが実行されているが、ブラウザからそのページにアクセスできないことを意味します。Nginx構成ディレクトリを確認してみてください。
  • "ダイナミックライブラリを読み込めません'/var/www/BoltWire/vendor/php72-zip/libphp7。2.so 「または「スクリプトの実行エラー」。これは、BoltWireCMSディレクトリにPHPファイルを実行および実行するために必要な権限がないことを意味します。
  • "初期化中にエラーが発生しました...そのようなファイルまたはディレクトリはありません "。これは、BoltWireCMSが正しくインストールされていないことを意味します。BoltWireCMSをインストールするための正しい手順に従っているかどうかを確認する必要があります。
  • "許可が拒否されました "。これは、/ var / www/boltまたは/var/wwwディレクトリに適切にアクセスできないことを意味します。
  • " 致命的なエラー:クラス'PDO'が見つかりません... "。これは、PHPがデータベースに接続できないことを意味し、PHPの構成を確認する必要がある場合があります。
  • "探しています... "または"警告:foreach()に無効な引数が指定されました... "。これは、BoltWire CMSが指定した内容を見つけることができないことを意味します。通常、これは、構成内のブログ名とスラッグまたはパスが不明であることが原因です。 。
  • " ディレクトリを作成できません...未定義のインデックス:表示されたデータ "。これは、BoltWire CMSがNginxサーバーにディレクトリを作成できないことを意味し、PHP構成を確認する必要がある場合があります。
  • " 解析エラー:構文エラー、予期しない'=' in ... at ... "。これは、BoltWire CMSがそのファイルを実行できないか、ファイルの1つを読み取ることができないことを意味します。これは、構成で誤った構文を使用した場合に発生する可能性があります。
  • "404が見つかりませんnginx/1.14.0(ubuntu) 「bolt.example.comの「A」レコードをサーバーに追加すると役立つはずです。
  • "404が見つかりません"または"要求されたURL...がこのサーバーで見つかりませんでした "。これは、BoltWire CMSがファイルを見つけられなかったことを意味します。BoltWire構成をチェックし、正しいパスを指定していることを確認する必要がある場合があります。

BoltWireはインストールされていますが、ページがないか、BoltWire CMSがインストールされている場合はBoltWireログインページが表示されます。Boltは、Boltのインストールディレクトリ内の/ var / www / bolt/_templatesフォルダーでデフォルトのBoltWireテンプレートを探します。そこでファイルを見つけると、BoltはBoltのインストールディレクトリにあるindex.phpファイルをホームページとして使用します。それでも機能しない場合は、PHP構成またはNginx構成に問題がある可能性があります。

結論

BoltWire CMSは、ブログや個人のWebサイトを運営するための優れたソフトウェアです。 BoltWire CMSの公式サイトから、BoltCMSの詳細を学ぶことができます。

この記事が、Ubuntu20.04サーバーにBoltWireをインストールする方法を学ぶのに役立つことを願っています。この記事が気に入ったら、TwitterまたはFacebookで友達と共有してください。ご不明な点がございましたら、下にコメントを残してください。


Ubuntu
  1. Ubuntu20.04LTSにNginxを使用してSeafileをインストールする方法

  2. Ubuntu20.04LTSでNginxを使用してModsecurityをデプロイする方法

  3. Ubuntu18.04LTSにBoltWireCMSをインストールする方法

  1. Ubuntu16.04にNginxを使用してGravCMSをインストールする方法

  2. Ubuntu18.04LTSにNginxを使用してSeafileをインストールする方法

  3. Ubuntu18.04LTSにBoltWireCMSをインストールする方法

  1. Ubuntu18.04LTSにBoltCMSをインストールする方法

  2. Ubuntu18.04LTSにNGINXを使用してBluditCMSをインストールする方法

  3. Ubuntu18.04LTSにNginxを使用してGitBucketをインストールする方法