この記事では、Linux を実行しているサーバー上で Web 環境を構成する方法について、手順を追って説明します。まず最初に、一般的な Web サーバーはいくつかの相互作用するコンポーネントで構成されていることを理解する必要があります。
- HTTPサーバー
- プログラミング言語インタプリタ
- データベース管理システム (DBMS)
ウェブサイトを管理するには、コンテンツ管理システム (CMS)、データベース管理用の Web インターフェイス、および FTP アクセスも設定する必要があります。
Linux 上で非常に人気のある構成 Apache-PHP-MySQL(MariaDB) をセットアップすることを検討してみましょう。また、vsftpd FTP サーバー、phpMyAdmin (データベース管理用の Web インターフェイス)、および WordPress コンテンツ管理システムもインストールします。
まずは VPSサーバーを注文する or 専用サーバーたとえば、Ubuntu Server 18.04 を実行する静的 IP アドレスを持つ仮想サーバーを使用しました。すべてのコマンドは root ユーザーによって実行されました。
Apache HTTP サーバーの構成
1。 インストール
apt install apache2
インストールが完了したら、ブラウザを開いて確認します。 「http://[サーバーのIPアドレス]」
上記のスクリーンショットのようなウェルカム ページが表示された場合、HTTP サーバーが動作していることを意味します。
2. テストページを作成する
ウェブサイトのデフォルトのルートディレクトリは 「/var/www/html」ここに先ほど見たウェルカムページがあります。別のディレクトリを作成しましょう 「/var/www/sites」 仮想ホストとサブフォルダ 「/var/www/sites/site1」 テスト Web サイトのインデックス ページを使用します。
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
その結果、ファイル 「/var/www/sites/site1/index.html」 1 行の HTML コードのみを含める必要があります。
<H1>Welcome</H1>
3. Apacheサーバーの設定
ウェブサイトの設定ファイルは 「/etc/apache2/sites-available/」 カタログ。ファイルからデフォルトの設定を取得して、新しい仮想ホストの設定ファイルを作成しましょう。 「000-default.conf」 基礎として。
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
ファイルをオープンする 「サイト1.conf」 そして、 「ドキュメントルート」 属性。値としてウェブサイトのパスを入力します。この場合は 「/var/www/sites/site1」
この段階では、複数の Web サイトの同時操作を構成する必要はないため、デフォルトの Web サイトを無効にして、新しいサイトを有効にできます。変更を適用するには、サーバー構成を再読み込みします。
a2dissite 000-default
a2ensite site1
systemctl reload apache2
リンクを開く 「http://[サーバーの_ip_address]」 もう一度、デフォルトのウェルカム ページの代わりに新しいページが表示されていることを確認します。
HTTP サーバーの構成が完了したので、次のステップに進むことができます。
FTPサーバー構成
1。 インストール
FTPサーバーと追加パッケージをインストールしましょう 「db-util」仮想ユーザーを設定する必要があります
apt install vsftpd db-util
2. ローカルアカウントを作成する
vsftpd サーバーを使用すると、非常に柔軟にアクセス権限を設定できます。タスクを実行するには、ftp ユーザーに次のものを提供する必要があります。
- コンテンツへのフルアクセス 「/var/www/sites/」;
- 上記のすべてを無効にする 「/var/www/」;
- 仮想アカウントとの接続。
ローカルアカウントを作成する "バーチャル" ログイン権限はないが、ホームフォルダにはアクセスできる 「/var/www/」このアカウントはFTPユーザーがサーバーに接続するために使用します
useradd -d /var/www virtual
"根" の所有者になります 「/var/www」 デフォルトではフォルダに保存されます。FTPユーザーがウェブサイトのコンテンツを変更できるようにするには、 「/var/www/sites/」 サブフォルダを含む "バーチャル".
chown -R virtual:root /var/www/sites
その結果、ユーザーは "バーチャル" の内容を見ることができます 「/var/www/」 そして、 「/var/www/sites/」 サブフォルダ。
3。 コンフィギュレーション
主な設定はファイルにあります 「/etc/vsftpd.conf」なので、それを開いて次のように編集してみましょう。
#enable virtual users
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
#configure permission
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=NO
anon_umask=0022
chroot_local_user=YES
#launch settings
listen=YES
pasv_min_port=30000
pasv_max_port=30999
4. データベースを作成する
仮想アカウントのデータを保存するにはデータベースが必要になります。
まず、簡単なテキストファイルを作成しましょう 「users.txt」 ホームフォルダに仮想ユーザーのアクセス詳細(ログインとパスワード)を1行おきに保存します。たとえば、ログイン名が 「ftp」 そして、パスワード 「Qwe123」ファイルは次のようになります。
ftp
Qwe123
データベースを作成しましょう
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
デフォルトのPAMファイルを変更してみましょう 「/etc/pam.d/vsftp」 次のように:
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
のパスに注意してください 「pam_userdb.so」 ライブラリは異なる場合がありますが、必要に応じて変更できます。
変更を適用するには、vsftpd サーバーをリロードします。
systemctl restart vsftpd
FTPサーバーの設定が完了しました。
接続の詳細:
- ftp://[サーバーのIPアドレス]
- ログイン: ftp
- パスワード: Qwe123
PHPサーバーの設定
1. PHPのインストール
現在、PHP の最新の安定バージョンは php 7.4.5 ですが、これは公式の Ubuntu リポジトリには含まれていません。サードパーティのリポジトリに接続して、最新バージョンの PHP をインストールしましょう。
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2。 チェック
PHPを実行するには、ウェブページファイルに 「.php」 拡張子。テストページの名前を変更してみましょう。
cd /var/www/sites/site1/
mv index.html index.php
次のphp行をファイルに追加します 「/var/www/sites/site1/index.php」したがって、ファイルは次のようになります。
<H1>Welcome</H1>
<?php
phpinfo();
?>
変更を保存し、ブラウザで結果を確認します。
関数の結果を見ると 「phpinfo()」PHP インタープリターは正常に動作しています。それでは次のステップに進みましょう。
MySQL (MariaDB) の設定
1。 インストール
MariaDB と MySQL 用の PHP モジュールをインストールして、Apache をリロードしましょう。
apt install mariadb-server php-mysql
systemctl restart apache2
テストページを更新し、PHP設定表のPDOセクションに移動します。セクションが見つかったら 「PDO_mysql」、それはMysql のドライバーが正しくインストールされていることを意味します。
次に、MariaDBの初期セキュリティ設定を行い、 "ルート" ユーザーを削除し、リモート アクセスを無効にし、すべてのゲスト アカウントを削除します。
mysql_secure_installation
最初のステップでは、 "根" DBMSにアクセスするためのユーザーのパスワードを入力するか、パスワードがない場合はEnterを押します。 "根" インストール後にユーザーが押すだけで "入る".
MariaDBにはOSアカウントとは関係のない独自のアカウントが既に存在することに注意してください。そのため、MariaDBで扱う唯一のユーザーは "根".
その後、コンフィギュレータはルートユーザーのパスワードを設定するように求めます。次のように入力します。 「Y」 確認のため新しいパスワードを入力してください。私たちの場合、 「Qwe123」
返信 「Y」 残りの質問はすべて最後までお答えします。
設定が完了しました!
MariaDB アクセスの詳細:
- ログイン: root
- パスワード: Qwe123
phpMyAdmin の設定
1。 インストール
PHPに必要な拡張機能をインストールしましょう - MBSTRING.
apt install php-mbstring
公式リポジトリには古いバージョンの phpMyAdmin しかないので、新しいバージョンを手動でインストールしましょう。
プロジェクトの公式ウェブサイトを開く「https://www.phpmyadmin.net/」をクリックして最新のアーカイブをダウンロードしてください。
アーカイブをサーバーにコピーします 「/var/www/sites/」 任意の FTP クライアントを使用してフォルダーを開きます。
フォルダを解凍し、名前を次のように変更します。 「phpMyAdmin」インストールを忘れないでください 「解凍」 ユーティリティ。アーカイブを解凍した後は、アーカイブを削除できます。
apt install unzip
cd /var/www/sites/
unzip phpMyAdmin-5.0.2-all-languages.zip
mv phpMyAdmin-5.0.2-all-languages phpMyAdmin
rm phpMyAdmin-5.0.2-all-languages.zip
次のフォルダを作成します 「/var/www/sites/phpMyAdmin/tmp」 一時ファイルについては、すべてのユーザーにアクセスを許可してください。これを行わないと、phpMyAdmin は一時フォルダーへのアクセスが拒否されたと報告します。
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. エイリアスを作成する
phpMyAdmin は別の仮想ホストではなく、ルート ディレクトリの外部にあるため、エイリアスを設定しましょう。
ファイルをオープンする 「/etc/apache2/mods-available/alias.conf」 この行を追加します:
Alias /pma “/var/www/sites/phpMyAdmin"
このセクション内:
<IfModule alias_module>
</IfModule>
変更を適用するには、Apache をリロードします。
systemctl reload apache2
エイリアスが設定されているので、ここからphpMyAdminにアクセスできます 「http://[サーバーのIPアドレス]/pma」。
3. データベースを準備する
MariaDB の初期設定中に root ユーザーの使用を制限したため、phpMyAdmin へのアクセスに使用されるすべての権限を持つ新しいアカウントを作成する必要があります。
さらに、phpMyAdmin の追加機能を有効にするには、サービス データベースとそれにアクセスするためのアカウントが必要になります。
アカウントを作成しましょう
mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit
2番目のリクエストのデータベース名はバックスパークス「…ON」になっていることに注意してください。 phpmyadmin は、.* TO 'pma'@'localhost' 識別される ...”,
その結果、MariaDB に 2 つのアカウントが作成されます。
- ログイン: pma、パスワード: Qwe123Full アクセス、phpMyAdmin へのログインに使用されます
- ログイン: pmaservice、パスワード: Qwe123追加機能が動作するにはサービスアカウントが必要です
次のステップでは、これらの詳細を設定ファイルに設定します。 「config.inc.php」.
次にファイルからデータベースをインポートする必要があります 「phpMyAdmin/sql/create_tables.sql」.
phpMyAdmin の助けを借りてインポートしてみましょう。
リンクを開く 「http://[サーバーのIPアドレス]/pma」
ログイン情報を入力 「pma」 そして、パスワード 「Qwe123」
に行く 「インポート」、クリック "ファイルを選ぶ" ファイルを選択します ”sql/create_tables.sql” phpMyAdminのルートディレクトリにあります。PC上にフォルダがあるはずです 「phpMyAdmin」 ファイルが含まれています。必要に応じてアーカイブ解除してください。
詳しくはこちら "次" インポートを開始します。
4。 コンフィギュレーション
テンプレートから設定ファイルをコピーしましょう
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
設定ファイルを開いてみましょう 「/var/www/sites/phpMyAdmin/config.inc.php」 次の変更を行います。
属性にランダムな32文字の値を設定します “$cfg['blowfish_secret']”任意のパスワードジェネレーターを使用してください。
すべての行からコメントを削除します 「phpMyAdmin 設定保存設定」 セクションでMariaDBのサービスアカウントのログインとパスワードを設定します。 「コントロールユーザー」 の三脚と 「コントロールパス」 属性に応じて変更します。私たちの場合、 pmaサービス の三脚と クウェ123.
変更を保存します。
phpMyadmin のアクセス詳細:
- http://[server’s_ip_address]/pma/
- ログイン: pma
- パスワード: Qwe123
Linux サーバーに WordPress をインストールして設定する方法
1. WordPressパッケージとファイルの配置
WPの公式サイトへアクセスhttps://ru.wordpress.org/」をクリックし、アーカイブをローカル PC にダウンロードします。
アーカイブをサーバーにアップロードし、 「/var/www/sites/」 フォルダを解凍して 「ワードプレス"フォルダ。
の内容をコピーします 「/var/www/sites/wordpress/」 ルートフォルダの 「/var/www/sites/site1/」 ウェブサイトをご覧ください。
コンソール経由でルート権限でファイルをコピーしたので、ファイルの所有者を変更しましょう。 「/var/www/sites/」 フォルダの内容を含む "バーチャル"これは、クライアント経由の FTP 接続のフルアクセスを有効にするために必要です。
cd /var/www/sites/
tar -xzvf wordpress-5.4-ru_RU.tar.gz
cp -R wordpress/* site1/
chown -R virtual:root /var/www/sites
2. WordPress用のデータベースを作成する
phpMyAdmin にログインし、「データベースの作成」をクリックします。任意のデータベース名(この場合は「wordpress_db」)を指定して、「作成」ボタンをクリックします。
左側のセクションで新しいデータベースを選択し、クリックします。 「特権」
次に、をクリックします。 「ユーザーアカウントを追加」.
ログインとパスワードを入力してください(wpサービス / クウェ123)が開いたウィンドウでチェック 「wordpress_db のすべての権限を付与する」 をクリックし "次"
次のページでクリック 「すべてキャンセル」 データベースレベルのすべての権限をリセットするには、 "次".
3. Linuxサーバー上のWordPressの設定
ウェブサイトのルートディレクトリに移動し、テンプレートから構成ファイルをコピーします。
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Video Cloud Studioで 「wp-config.php」 ファイルを開き、前の手順で作成したデータベース接続パラメータを入力して、変更を保存します。
4. CMS WordPressをインストールする
ブラウザで次のリンクを開きます 「http://[サーバーのIPアドレス]/wp-admin/install.php」.
すべてのフィールドに入力してクリック 「WordPressをインストールする」ランダムなユーザー名とパスワードを設定します。この場合は ドロップイン の三脚と クウェ123 それに応じて。
これらの詳細は WordPress へのアクセスに使用されます。
インストールが完了したら、リンクを開いてください 「http://[サーバーのIPアドレス]/wp-login.php」アクセス詳細を入力して、WordPress にログインします。
メインページに WordPress テンプレートの 1 つが表示されます。
設定が完了しました。
WordPress アクセスの詳細:
- http://[server’s_ip_address]/wp-login.php
- ログイン: wpadmin
- パスワード: Qwe123