FreeBSD 12.0にApache、MySQL、PHP(FAMP)スタックをインストールする方法

前書き

LinuxのLAMPスタックに相当するFAMPスタックは、通常一緒にインストールされてFreeBSDサーバーが動的なWebサイトやWebアプリケーションをホストできるようにするオープンソースソフトウェアのコレクションです。FAMPはF reeBSD(オペレーティングシステム)、 A pache(HTTPサーバー)、M ySQL(データベースサーバー)、およびP HP(動的PHPコンテンツを処理するプログラミング言語)を表す頭字語です。

このガイドではpkg、FreeBSDパッケージマネージャーであるを使用して、FAMPスタックの要素をFreeBSD 12.0 Vultrインスタンスにデプロイします。

必要条件

このガイドを始める前に、次のものが必要です。

  • FreeBSD 12.0 VPS。
  • root特権を持つユーザー、またはsudo構成変更を行うユーザー。
  • FreeBSDシステムとコマンドラインインターフェースの基本的な知識があることが推奨されます。

あなたが始める前に

FreeBSDのバージョンを確認してください。

uname -ro
# FreeBSD 12.0-RELEASE-p6

FreeBSDシステムが最新であることを確認します。

freebsd-update fetch install
pkg update && pkg upgrade -y

必要なパッケージをインストールします。

pkg install -y sudo vim bash curl

希望するユーザー名で新しいユーザーアカウントを作成します。使用していますjohndoe

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

visudoコマンドを実行し、%wheel ALL=(ALL) ALL行のコメントを外して、wheelグループのメンバーが任意のコマンドを実行できるようにします。

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

次に、新しく作成したユーザーに切り替えますsu

su - johndoe

注: ユーザー名に置き換えjohndoeてください。

タイムゾーンを設定します。

sudo tzsetup

ステップ1 — Apacheのインストール

Apache Webサーバーは現在、世界で最も人気のあるWebサーバーの1つです。ウェブサイトをホストするのに最適です。

FreeBSDのパッケージマネージャーを使用してApacheをインストールできますpkg。パッケージマネージャを使用すると、ほとんどのソフトウェアをFreeBSDが管理するリポジトリから簡単にインストールできます。使用方法のpkg詳細については、こちらをご覧ください

Apacheをインストールするには、次のコマンドを発行します。

sudo pkg install -y apache24

バージョンを確認します。

httpd -v
# Server version: Apache/2.4.39 (FreeBSD)

次に、Apacheを有効にして起動します。

sudo sysrc apache24_enable=yes
sudo service apache24 start

Apacheが起動したことを確認するには、次のコマンドを実行します。

sudo service apache24 status

その結果、次のようなものが表示されます。

# Output
apache24 is running as pid 17772.

WebブラウザーでサーバーのパブリックIPアドレスにアクセスすることにより、Apacheがインストールされ、エラーなしで機能していることを確認できます。に移動しhttp://your_server_IPます。デフォルトの " It works! " Apacheページが表示されます。

ステップ2 — MySQL 8.0のインストール

Webサーバーが稼働しているので、リレーショナルデータベース管理システムであるMySQLをインストールします。MySQLサーバーは、サーバーが情報を格納できるデータベースへのアクセスを整理して提供します。

この場合もpkg、ソフトウェアを入手してインストールするために利用できます。

MySQLをインストールするには8.0使用してpkg、次のコマンドを使用します。

sudo pkg install -y mysql80-client mysql80-server

このコマンドは、最新バージョンのMySQLクライアントおよびサーバー(現在)をインストールします8.x.x

バージョンを確認します。

mysql --version
# mysql  Ver 8.0.16 for FreeBSD12.0 on amd64 (Source distribution)

MySQLを有効にして起動します。

sudo sysrc mysql_enable=yes
sudo service mysql-server start

MySQLが起動したことを確認するには、次のコマンドを実行します。

sudo service mysql-server status

次のようなものが表示されます。

# Output
mysql is running as pid 19171.

良い方法として、mysql_secure_installation安全でないデフォルトを削除してデータベースシステムへのアクセスをわずかに制限するセキュリティスクリプトを実行することができます。

sudo mysql_secure_installation

パスワードを設定するように求められ、その後いくつかの他の質問が続きます。強力なパスワードを入力し、残りの質問ではを押しENTERてデフォルトを選択します。

ステップ3 — PHP 7.3のインストール

PHPは、Web開発用に設計されたサーバーサイドスクリプト言語です。PHPはFAMPスタックの必須コンポーネントです。また、PHPの代わりにPythonまたはPerlが一般的に使用されます。ただし、最も一般的なオプションであるPHPが最も頻繁に使用されます。データベースとともに、それはあなたのウェブサイトやアプリに動的な振る舞いを与えます。

もう一度、pkgシステムを利用してPHPコンポーネントをインストールします。

でPHP 7.3をインストールするにはpkg、次のコマンドを実行します。

sudo pkg install -y php73 php73-mysqli mod_php73

これは、インストールphp73mod_php73およびphp73-mysqliパッケージを。

バージョンを確認してください。

php --version
# PHP 7.3.7 (cli) (built: Jul 25 2019 01:28:53) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.7, Copyright (c) 1998-2018 Zend Technologies

次のコマンドを使用して、サンプルPHP構成ファイルを所定の場所にコピーします。

sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini

次に、PHP-FPMを有効にして起動します。

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

PHP-FPMが起動したことを確認するには、次のコマンドを実行します。

sudo service php-fpm status

その結果、次のようなものが表示されます。

# Output
php_fpm is running as pid 23005.

PHPモジュールのインストール(オプション)

PHPの機能を拡張するために、オプションでいくつかの追加モジュールをインストールできます。

現在PHPモジュールでコンパイルされていることを確認するには、次のコマンドを実行します。

php -m
# [PHP Modules]
# Core
# date
# libxml
# mysqlnd
# pcre
# Reflection
# SPL
# standard

# [Zend Modules]

利用可能なPHPモジュールを検索するには、次のコマンドを使用できます。

pkg search ^php73-*

結果は、主にインストールできるPHP 7.3モジュールになります。

# Output
# php73-7.3.7                    PHP Scripting Language
# php73-Ice37-3.7.2              Modern alternative to object middleware such as CORBA/COM/DCOM/COM+
# php73-aphpbreakdown-2.2.2      Code-Analyzer for PHP for Compatibility Check-UP
# php73-aphpunit-1.8             Testing framework for unit tests
# php73-bcmath-7.3.7             The bcmath shared extension for php
# php73-brotli-0.7.0             Brotli extension for PHP
# php73-bsdconv-11.5.0           PHP wrapper for bsdconv
# php73-bz2-7.3.7                The bz2 shared extension for php
# php73-calendar-7.3.7           The calendar shared extension for php
# php73-composer-1.8.6           Dependency Manager for PHP
# php73-ctype-7.3.7              The ctype shared extension for php
# php73-curl-7.3.7               The curl shared extension for php
# . . .

調査の結果、パッケージをインストールする必要があると判断した場合は、pkg installコマンドを使用してインストールできます。ほとんどのPHP Webアプリケーションは追加のモジュールを必要とするので、それらを検索する方法を知ることは良いことです。

ステップ4 — PHPモジュールを使用するようにApacheを構成する

PHPを使用する前に、Apacheで動作するように構成する必要があります。

実行sudo vi /usr/local/etc/apache24/modules.d/001_mod-php.confして、以下のコンテンツをファイルに入力します。

<IfModule dir_module>
  DirectoryIndex index.php index.html
  <FilesMatch "\.php$">
    SetHandler application/x-httpd-php
  </FilesMatch>
  <FilesMatch "\.phps$">
    SetHandler application/x-httpd-php-source
  </FilesMatch>
</IfModule>

ファイルを保存して:+ W+で終了しますQ

Apacheの設定を確認してください。

sudo apachectl configtest

Apacheで設定を変更したので、それらを適用するにはサービスをリロードする必要があります。それ以外の場合、Apacheは以前の構成で動作します。

sudo apachectl restart

ステップ5 — PHP処理のテスト

システムがPHP用に正しく構成されていることをテストするために、非常に基本的なPHPスクリプトを作成できます。このスクリプトを呼び出しますinfo.php。デフォルトでは、DocumentRootに設定されてい/usr/local/www/apache24/dataます。次のようにinfo.php入力して、その場所にファイルを作成できます。

sudo vim /usr/local/www/apache24/data/info.php

次のコードをそのファイルに追加します。

<?php phpinfo(); ?>

移動するhttp://your_server_IP/info.phpと、次のページが表示されます。

FreeBSD 12.0にApache、MySQL、PHP(FAMP)スタックをインストールする方法

FAMPスタックのインストールとセットアップ後info.php、サーバーに関する情報を公開しないようにファイルを削除する必要があります。

sudo rm /usr/local/www/apache24/data/info.php

結論

おめでとうございます。FreeBSD12.0 VPSにFAMPスタックが正常にインストールされました。これで、次に何をするかについて複数の選択肢があります。ほとんどの種類のWebサイトとWebソフトウェアをその上にインストールできるプラットフォームをインストールしました。


FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

はじめにインターネットに接続されているすべてのサービスは、ブルートフォース攻撃または不当なアクセスの潜在的なターゲットです。fail2baのようなツールがあります

FreeBSD 12にNeos CMSをインストールする方法

FreeBSD 12にNeos CMSをインストールする方法

別のシステムを使用していますか?Neosは、CMSとアプリケーションフレームワークをコアとするコンテンツアプリケーションプラットフォームです。このガイドでは、インストール方法を説明します

完全なディスク暗号化でOpenBSD 5.6をセットアップする

完全なディスク暗号化でOpenBSD 5.6をセットアップする

このチュートリアルでは、Vultr VPSで完全に暗号化されたディスクを使用してOpenBSD 5.6を設定する方法を示します。暗号化の部分に関する注意:周りのほとんどのデータセンター

Debian、CentOS、およびFreeBSDでSudoを使用する方法

Debian、CentOS、およびFreeBSDでSudoを使用する方法

LinuxおよびUnixのシステム管理者の間では、sudoユーザーを使用してサーバーにアクセスし、コマンドをルートレベルで実行することは非常に一般的です。sudの使用

FreeBSD 12にosTicketをインストールする方法

FreeBSD 12にosTicketをインストールする方法

別のシステムを使用していますか?osTicketは、オープンソースのカスタマーサポートチケットシステムです。osTicketのソースコードはGithubで公開されています。このチュートリアルでは

FreeBSD 11にShopware CEをインストールする方法

FreeBSD 11にShopware CEをインストールする方法

別のシステムを使用していますか?ショップウェアは、オンラインビジネス向けのオープンソースのeコマースプラットフォームです。ショップウェアのソースコードはGithubでホストされています。このガイドは笑います

OpenBSD 6.2にWordPressをインストールする

OpenBSD 6.2にWordPressをインストールする

はじめにWordPressは、インターネット上の主要なコンテンツ管理システムです。ブログから動的コンテンツを備えた複雑なWebサイトまで、あらゆるものを強化します

OSの選択:CentOS、Ubuntu、Debian、FreeBSD、CoreOS、またはWindows Server

OSの選択:CentOS、Ubuntu、Debian、FreeBSD、CoreOS、またはWindows Server

この記事では、Vultrでテンプレートとして提供されるサーバーオペレーティングシステムの概要を説明します。CentOS CentOSはRHEL(Re

X-Cart 5をFreeBSD 12にインストールする方法

X-Cart 5をFreeBSD 12にインストールする方法

別のシステムを使用していますか?X-Cartは、数多くの機能と統合を備えた非常に柔軟なオープンソースのeコマースプラットフォームです。X-Cartのソースコードはホストです

FreeBSD 11 FAMP VPSにOmeka Classic 2.4 CMSをインストールする方法

FreeBSD 11 FAMP VPSにOmeka Classic 2.4 CMSをインストールする方法

別のシステムを使用していますか?Omeka Classic 2.4 CMSは、デジタルを共有するための無料のオープンソースのデジタル出版プラットフォームおよびコンテンツ管理システム(CMS)です。

Directus 6.4 CMSをFreeBSD 11 FAMP VPSにインストールする方法

Directus 6.4 CMSをFreeBSD 11 FAMP VPSにインストールする方法

別のシステムを使用していますか?Directus 6.4 CMSは、強力で柔軟な無料のオープンソースヘッドレスコンテンツ管理システム(CMS)であり、開発者に提供します。

FreeBSD 11にPyroCMSをインストールする方法

FreeBSD 11にPyroCMSをインストールする方法

別のシステムを使用していますか?PyroCMSは、PHPで記述されたオープンソースのCMSです。PyroCMSソースコードはGitHubでホストされています。このガイドでは、entirをよく歩いてください

FreeBSD 10でのMinecraftのセットアップ

FreeBSD 10でのMinecraftのセットアップ

この記事では、CPUが2つ、RAMが2GBのVultr VPSがあることを前提としています。VPSタイプに応じて設定を変更してください。この記事ではMinecrafも使用しています

FreeBSD 11で独自のメールサーバーを構築する

FreeBSD 11で独自のメールサーバーを構築する

独自の電子メールサーバーを実行することは、かなりやりがいがあります。あなたはあなたのデータを担当しています。また、配信オプションの柔軟性も向上します。しかしながら

FreeBSD 10でスワップファイルを作成する

FreeBSD 10でスワップファイルを作成する

デフォルトでは、Vultr FreeBSDサーバーはスワップスペースを含むように構成されていません。使い捨てのクラウドインスタンスを意図している場合は、おそらく必要ありません

FreeBSD 10でのiRedMailのセットアップ

FreeBSD 10でのiRedMailのセットアップ

このチュートリアルでは、FreeBSD 10の新規インストールにグループウェアiRedMailをインストールする方法を示します。少なくとも1ギガバイトのサーバーを使用する必要がありますo

FreeBSDでディスクのサイズを変更する方法

FreeBSDでディスクのサイズを変更する方法

FreeBSDオペレーティングシステムは、ルートパーティションファイルシステムにUFS(Unix File System)を利用しています。別名freebsd-ufsアップグレードの場合

OpenBSD 6でMariaDBを設定する

OpenBSD 6でMariaDBを設定する

この記事では、MariaDBをOpenBSD 6にインストールし、chrootされたWebサーバー(ApacheまたはNginx)からアクセスできるように構成する方法を紹介します。あなたはアルになります

FreeBSD 11 FAMP VPSにRedaxscript 3.2 CMSをインストールする方法

FreeBSD 11 FAMP VPSにRedaxscript 3.2 CMSをインストールする方法

別のシステムを使用していますか?Redaxscript 3.2 CMSは、最新で超軽量の無料のオープンソースのコンテンツ管理システム(CMS)です。

ビッグデータは人工知能をどのように変えていますか?

ビッグデータは人工知能をどのように変えていますか?

ビッグデータと人工知能は流行語ですが、それらがどのように相互に関連しているか知っていますか?さて、この記事を最後まで読んで、同じことを知ってください。

ハロウィーンのお得な情報に興奮していますか?しかし、Conned –スパムURLを取得する可能性があります

ハロウィーンのお得な情報に興奮していますか?しかし、Conned –スパムURLを取得する可能性があります

このハロウィーンシーズンのオンライン詐欺師は、魅力的なオンライン取引を熱心に探している間、あなたを騙す準備ができています。したがって、このような詐欺やデマを回避する方法は次のとおりです。

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartは、PHP、jQuery、およびHTML 5で記述された無料のオープンソースのショッピングカートプラットフォームです。シンプルで軽量、使いやすいeコマースソフトウォー

DebianでNFS共有をセットアップする

DebianでNFS共有をセットアップする

NFSはネットワークベースのファイルシステムであり、コンピューターはコンピューターネットワークを介してファイルにアクセスできます。このガイドでは、NFを介してフォルダーを公開する方法について説明します

Fedora 28にMatomo Analyticsをインストールする方法

Fedora 28にMatomo Analyticsをインストールする方法

別のシステムを使用していますか?Matomo(旧Piwik)は、Google Analyticsのオープンな代替手段であるオープンソースの分析プラットフォームです。Matomoのソースはoでホストされています

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

HTTPライブストリーミング(HLS)は、Apple Inc.によって実装された非常に堅牢なストリーミングビデオプロトコルです。HLSは、ファイアウォール、プロキシ、

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

はじめにインターネットに接続されているすべてのサービスは、ブルートフォース攻撃または不当なアクセスの潜在的なターゲットです。fail2baのようなツールがあります

Ubuntu 14.10へのMcMyAdminのインストール

Ubuntu 14.10へのMcMyAdminのインストール

McMyAdminは、サーバーの管理に使用されるMinecraftサーバーコントロールパネルです。McMyAdminは無料ですが、複数のエディションがあり、一部はパイです

私たちの生活にスマートホームデバイスを搭載することの6つの驚くべき利点

私たちの生活にスマートホームデバイスを搭載することの6つの驚くべき利点

このデジタル主導の世界では、スマートホームデバイスは生活の重要な部分になっています。スマートホームデバイスが私たちの生活を生きる価値のあるシンプルなものにする方法について、いくつかの驚くべき利点があります。

LinuxでTeamTalk Serverをセットアップする

LinuxでTeamTalk Serverをセットアップする

TeamTalkは、ユーザーが高品質のオーディオ/ビデオ会話、テキストチャット、ファイルの転送、および画面の共有を可能にする会議システムです。それは