CentOS8 + Apache + Nginx + MariaDBでVPSサーバーに環境構築をする(#8:その他サーバー内での設定)
これまでの記事ではウェブサーバーやデータベースサーバーの構築、またSSHの設定やSSL対応など、ウェブサイトを運用するためのサーバー環境を構築する方法をまとめてきましたが、それ以外にも必要となる設定がいくつかあります。今回はそのような設定についてまとめていきます。
(こちらの記事も合わせてどうぞ)
・CentOS8 + Apache + Nginx + MariaDBでVPSサーバーに環境構築をする(#1:サーバーの契約・OSのインストール)
・CentOS8 + Apache + Nginx + MariaDBでVPSサーバーに環境構築をする(#2:SSH・公開鍵認証の設定)
・CentOS8 + Apache + Nginx + MariaDBでVPSサーバーに環境構築をする(#3:ウェブサーバー・PHPのインストール)
・CentOS8 + Apache + Nginx + MariaDBでVPSサーバーに環境構築をする(#4:DBサーバー・phpMyAdminのインストール)
・CentOS8 + Apache + Nginx + MariaDBでVPSサーバーに環境構築をする(#5:バーチャルホストの設定)
・CentOS8 + Apache + Nginx + MariaDBでVPSサーバーに環境構築をする(#6:リバースプロキシサーバーの導入)
・CentOS8 + Apache + Nginx + MariaDBでVPSサーバーに環境構築をする(#7:SSL証明書のインストールと設定)
今回はその他で必要となるサーバー設定についてまとめていきました。要件によっては不要な場合もありますが、基本的なウェブサイトを公開するためにはいずれも必須になってくるのではないでしょうか。次回記事では引き続きサーバーに入れておきたいツールなどについてまとめていきたいと思います。
1. 外部SMTPサーバーへの転送設定
これまでVPSサーバーの環境構築についてまとめてきましたが、メールサーバーの構築については触れていません。実際にメールサーバーの構築は他のものと比べてもハードルが高く、メールの到着率なども考えると自前で準備するよりは、レンタルサーバーなどでのメールサーバーを利用する方が確実ですね。そのため外部のメールサーバーを利用する形になりますが、それにはいくつか設定が必要となります。その前に、まずはDNS設定にてドメインのMXレコードに外部のメールサーバーのホスト名を登録しておきます。 続いて、「postfix」を下記コマンドでインストールしていきます。# dnf install -y postfix Installed: .............. Complete!postfixの起動と自動起動設定を行います。
# systemctl restart postfix # systemctl enable postfix(補足)postfix起動時に下記のエラーが出る場合には「/etc/」配下にある「hosts」ファイルを下記のように変更します。
postfix[60813]: fatal: parameter inet_interfaces: no local interface found for ::1IPv6である「::1」の部分を丸ごとコメントアウトするような形での編集が加わります。 【/etc/hosts】
// 変更前 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 ↓ // 変更後 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6さらに下記コマンドでmailコマンドの拡張機能をインストールしていきます。
# dnf install -y mailx Installed: .............. Complete!「.mailrc」という名前のファイルをルートディレクトリに作成し、下記の設定を記述していきます。 【.mailrc】
set smtp=smtp://メールサーバーホスト名:SMTP送信ポート set smtp-auth-login set from=送信元メールアドレス set smtp-auth-user=SMTPユーザー名 set smtp-auth-password=SMTPパスワードこれで下記コマンドでメールの送信テストを行います。本文用のテキストファイルは別途テキストファイルなどで用意しておきます。その内容で指定した送信先にメールが届けばOKです。
# mail -s "件名" "送信先メールアドレス" < 本文用テキストファイルのパスこれでPHPのsendmailなどでメール送信をする際に、外部のメールサーバー経由でメールを送信することができるようになります。
2. HTTP/2への対応
HTTP/2(Hypertext Transfer Protocol version 2)とはHTTP通信のバージョンで、従来のバージョンよりもさらに高速で通信できることが特長です。デフォルトではHTTP/1.1のバージョンになっているため、利用するためには設定が必要となります。 まずは、HTTP/2の利用が可能な環境か確認していきます。OpenSSLとNginxのバージョンを確認し、HTTP/2に対応しているかをチェックします。OpenSSLはバージョンが1.0.2以上、Nginxのモジュール一覧の中に「–with-http_v2_module」があるかどうかを見ていきます。# openssl version OpenSSL 1.1.1c FIPS # nginx -V .............. TLS SNI support enabled configure arguments: …………--with-http_v2_module対応していることが確認できたら、続けて「/etc/nginx/conf.d/」に移動し、Nginxの設定ファイルにHTTP/2の設定を追記します。念の為あらかじめバックアップをとっておきます。
# /etc/nginx/conf.d/ # cp reverse_proxy.conf reverse_proxy.conf.copy # vim reverse_proxy.confHTTP/2に対応させるためには、 下記のように「http2」と追記するだけでOKです。簡単ですね。 【etc/nginx/conf.d/reverse_proxy.conf】
// 変更前 server { listen 443 ssl; .............. ↓ // 変更後 server { listen 443 http2 ssl; ..............設定終了後はNginxをリロードさせて設定を反映させていきます。
# nginx -s reloadこれでHTTP/2に対応できるようになりました。ブラウザのデベロッパーツールなどで、HTTP/2での通信ができているかを確認してみましょう。プロトコルの表記が「h2」とあればOKです。
今回はその他で必要となるサーバー設定についてまとめていきました。要件によっては不要な場合もありますが、基本的なウェブサイトを公開するためにはいずれも必須になってくるのではないでしょうか。次回記事では引き続きサーバーに入れておきたいツールなどについてまとめていきたいと思います。
sponserd
keyword search
recent posts
- Shopifyでのテーマ開発に便利なローカル環境を構築する#2:Shopify CLI
Shopifyでのテーマ開発に便利なローカル環境を構築する#2:Shopify CLI
- Shopifyでのテーマ開発に便利なローカル環境を構築する#1:Shopify Theme Kit
Shopifyでのテーマ開発に便利なローカル環境を構築する#1:Shopify Theme Kit
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#7:動的ルーティングとデータベース更新処理
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#7:動的ルーティングとデータベース更新処理
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#6:ミドルウェアの設定と認証ページ作成
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#6:ミドルウェアの設定と認証ページ作成
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#5:ログイン認証機能の実装
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#5:ログイン認証機能の実装
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#4:ログイン認証ユーザー作成
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#4:ログイン認証ユーザー作成
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#3:静的ページの作成とルーティング
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#3:静的ページの作成とルーティング
- Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#2:Laravelのインストール
Docker+Laravelでバックエンドの開発環境構築とウェブアプリケーション制作#2:Laravelのインストール
categories