このチュートリアルでは、FreeBSD 11.xにFBEMPをインストールして設定する方法について説明します。 最新のリリース。 FBEMPは、次のソフトウェアのコレクションを表す頭字語です。
FreeBSD 11.1 Unixのようなディストリビューション、Nginx Webサーバー、MariaDBリレーショナルデータベース管理システム(MySQLのコミュニティフォーク)、およびサーバー側で実行されるPHP動的プログラミング言語。
要件
- FreeBSD11.xのインストール
- FreeBSDのインストール後に行うべき10のこと
ステップ1:FreeBSDにNginxWebサーバーをインストールする
1。 FBEMP用にインストールする最初のサービス FreeBSDでスタック Nginxで表されるWebサーバーです ソフトウェア。
Nginx Webサーバーには、 FreeBSD 11.x PORTSで利用可能なより多くのコンパイル済みパッケージがあります。 。 Nginxのリストを取得するには ポートからのバイナリ リポジトリの場合は、サーバーターミナルで次のコマンドを発行します。
# ls /usr/ports/www/ | grep nginx # pkg search -o nginx
2。 この特定の構成では、 Nginxのメインパッケージバージョンをインストールします 以下のコマンドを発行します。 pkg パッケージ管理では、nginxパッケージのインストールを続行するかどうかを尋ねられます。はいと答えます(y
コマンドラインで)インストールプロセスを開始します。
# pkg install nginx
3。 Nginx Webサーバーパッケージがシステムにインストールされたら、次のコマンドを実行して、デーモンをシステム全体で有効にし、システムでサービスを開始します。
# sysrc nginx_enable="yes" # service nginx start
4。 次に、 sockstatを使用します コマンド、Nginxサービスネットワークソケットが 80 / TCP にバインドされている場合は、それらを確認します 以下のコマンドを発行して、ポートを作成します。 sockstatコマンドの出力は、返される結果をnginx文字列のみに減らすために、grepユーティリティを介してパイプされます。
# sockstat -4 | grep nginx
5。 最後に、ネットワーク内のデスクトップコンピューターでブラウザーを開き、HTTPプロトコルを介してNginxのデフォルトのWebページにアクセスします。 FQDNを記述します Nginxウェブサーバーのデフォルトのウェブページをリクエストするために提出されたブラウザのURLにある、お使いのマシン、ドメイン名、またはサーバーのIPアドレス。メッセージ「nginxへようこそ! 下のスクリーンショットに示すように、ブラウザに」が表示されます。
http://yourdomain.com http://your_server_IP http://your_machine_FQDN
6。 / usr / local / www / nginx /にあるNginxWebコンテンツのデフォルトのwebootディレクトリ 絶対システムパス。この場所で、.html
などのWebコンテンツファイルを作成、コピー、またはインストールする必要があります または.php
あなたのウェブサイトのためのファイル。
この場所を変更するには、nginxメイン構成ファイルを編集し、新しいWebルートパスを反映するようにrootディレクティブを変更します。
# nano /usr/local/etc/nginx/nginx.conf
ここで、次の行を検索して更新し、新しいWebルートパスを反映させます。
root /path/to/new/webroot;
ステップ2:FreeBSDにPHPをインストールする
7。 Apache HTTPとは異なり サーバーの場合、NginxにはPHPコードをネイティブに処理する機能がありません。その見返りとして、NginxウェブサーバーはPHPリクエストを php-fpm FastCGIなどのPHPインタープリターに渡します。 コードを検査して実行するデーモン。結果のコードはNginxに返され、Nginxはコードを要求されたhtml形式に再構成し、さらに訪問者のWebブラウザーにコードを送信します。
FreeBSD 11.x ポートリポジトリは、 PHP 5.6などのPHPプログラミング言語用の複数のバイナリバージョンを提供します 、 PHP 7.0 およびPHP7.1 リリース。 FreeBSD 11.xで利用可能なすべてのコンパイル済みPHPバージョンを表示するため 、以下のコマンドを実行します。
# pkg search -o php # ls /usr/ports/lang/ | grep php
8。 システムで実行しているWebアプリケーションに最適なバージョンのPHPをインストールすることを選択できます。ただし、このガイドでは、PHPの最新バージョンをインストールします。
PHP 7.1をインストールするには リリースと、さまざまなWebアプリケーションに必要ないくつかのPHPの重要なモジュールについては、次のコマンドを実行してください。
# pkg install php71 php71-mysqli php71-mcrypt php71-zlib php71-gd php71-json mod_php71 php71-mbstring php71-curl
9。 システムにPHPパッケージをインストールしたら、 PHP-FPMを開きます。 Nginxの構成ファイルを作成し、ユーザーとグループの値を調整して、Nginxランタイムユーザーの値( www )と一致させます。 。まず、以下のコマンドでファイルのバックアップを作成します。
# cp /usr/local/etc/php-fpm.d/www.conf{,.backup}
次に、ファイルを開き、以下のサンプルに示されているように次の行を更新します。
user = www group = www
10。 また、以下のコマンドを発行して、本番環境で使用するPHP設定ファイルを作成してください。このファイルでは、実行時にPHPインタープリターに適用されるカスタム変更を行うことができます。
# cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini
たとえば、 date.timezoneを変更します 以下の例に示すように、マシンの物理的な場所を更新するためのPHPインタープリターの設定。 PHPのタイムゾーンリストはここにあります:http://php.net/manual/en/timezones.php。
# vi /usr/local/etc/php.ini
次のタイムゾーンを追加します(国ごとにタイムゾーンを設定します)。
date.timezone = Europe/London
アップロードされたファイルの最大ファイルサイズなど、他のPHP変数を調整することもできます。これは、以下の値を変更することで増やすことができます。
upload_max_filesize = 10M post_max_size = 10M
11。 その後、PHPのカスタム設定を行い、 PHP-FPMを有効にして開始します。 以下のコマンドを発行して新しい構成を適用するためのデーモン。
# sysrc php_fpm_enable=yes # service php-fpm start
12。 デフォルトでは、 PHP-FPM FreeBSDのデーモンは、ポート 9000 / TCPのローカルネットワークソケットにバインドします 。 PHP-FPMを表示するには ネットワークソケットは次のコマンドを実行します。
# sockstat -4 -6| grep php-fpm
13。 NginxWebサーバーがPHPスクリプトをFastCGIに渡すため 127.0.0.1:9000
をリッスンしているゲートウェイサーバー ソケットで、Nginxメイン構成ファイルを開き、次のサンプルに示すように次のコードブロックを追加します。
# vi /usr/local/etc/nginx/nginx.conf
nginxのFastCGIコードブロック:
location ~ \.php$ { root /usr/local/www/nginx; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; include fastcgi_params; }
14。 サーバーの現在のPHP情報を表示するには、info.php
を作成します。 次のコマンドを発行して、Nginxwebootパスにファイルを追加します。
# echo "<?php phpinfo(); ?>" | tee /usr/local/www/nginx/info.php
15。 次に、Nginxデーモンをテストして再起動し、 PHP FastCGIを適用します。 設定を行い、info.php
にアクセスします ブラウザのページ。
# nginx -t # Test nginx configuration file for syntax errors # service nginx restart
それに応じて、以下のリンクのIPアドレスまたはドメイン名を置き換えてください。 PHP情報ページには、以下のスクリーンショットに示すような情報が表示されます。
http://yourdomain.com/info.php http://server_IP-or-FQDN/info.php
ステップ3:FreeBSDにMariaDBをインストールする
16。 FEMPにない最後のコンポーネント データベースにスタックします。 MariaDB / MySQL は、動的Webサイトの展開に使用されるNginxWebサーバーと最も関連性の高いオープンソースRDBMSソフトウェアの1つです。
実際、 MariaDB / MySQL は、世界で最も使用されているリレーショナルデータベースの1つです。 FreeBSDポートを検索する 、 MariaDB / MySQLの複数のリリースを見つけることができます 。
このガイドでは、 MariaDBをインストールします MySQLのコミュニティフォークであるデータベース データベース。 MariaDBの利用可能なバージョンを検索するには 、ターミナルで次のコマンドを発行します。
# ls -al /usr/ports/databases/ | grep mariadb # pkg search mariadb
17。 最新バージョンのMariaDBデータベースサーバーをインストールするには、次のコマンドを実行します。また、MySQLに接続するためにPHPスクリプトで使用されるPHPリレーショナルデータベースドライバーモジュールをインストールする必要があります。
# pkg install mariadb102-server php71-mysqli
18。 データベースがインストールされたら、MySQLデーモンを有効にし、次のコマンドを実行してデータベースサービスを開始します。
# sysrc mysql_enable="YES" # service mysql-server start
19。 また、必ず PHP-FPMを再起動してください MySQLドライバー拡張機能をロードするためのデーモン。
# service php-fpm restart
20. On the next step, secure MariaDB database by launching mysql_secure_installation script. Use the below sample of the installation script in order to answer the questions. Basically, say yes (y)
for all asked questions to secure the database and type a strong password for MySQL root user.
# /usr/local/bin/mysql_secure_installationMySQL Secureインストールスクリプトの出力
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and you haven't set the root password yet, the password will be blank, so you should just press enter here. Enter current password for root (enter for none): OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation. Set root password? [Y/n]y
New password: Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success! By default, a MariaDB installation has an anonymous user, allowing anyone to log into MariaDB 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? [Y/n]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? [Y/n]y
... Success! By default, MariaDB 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? [Y/n]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? [Y/n]y
... Success! Cleaning up... All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB!
21。 コンソールからMariaDBデータベース接続をテストするには、以下のコマンドを実行します。
# mysql -u root -p -e "show status like ‘Connections’"
22。 デフォルトで0.0.0.0:3306/TCPで着信ネットワーク接続をリッスンするMariaDBをさらに保護するため ソケットの場合、以下のコマンドを発行して、サービスをループバックにバインドします。 インターフェイスと完全にリモートアクセスを禁止します。その後、MySQLサービスを再起動して、新しい構成を適用します。
# sysrc mysql_args="--bind-address=127.0.0.1" # service mysql-server restart
localhostかどうかを確認します 以下の例に示すように、netstatコマンドを実行することでバインディングが正常に適用されました。
# netstat -an -p tcp
それで全部です!これで、FreeBSDにNginxウェブサーバー、MariaDBリレーショナルデータベース、PHPサーバー側プログラミング言語が正常にインストールされました。これで、動的Webページの作成を開始して、訪問者にWebコンテンツを提供できます。