Nginx(「エンジンx」と発音)は、無料のオープンソースの高性能HTTPサーバーです。 Nginxは、その安定性、豊富な機能セット、シンプルな構成、および低リソース消費で知られています。このチュートリアルでは、PHPサポート(PHP-FPM経由)およびMySQL(Mariadb)サポートを備えたCentOS7サーバーにNginxをインストールする方法を示します。
1予備メモ
このチュートリアルでは、ホスト名server1.example.comとIPアドレス192.168.1.105を使用します。これらの設定はユーザーによって異なる場合があるため、必要に応じて置き換える必要があります。
2追加のリポジトリを有効にする
Nginxは公式のCentOSリポジトリからは入手できないため、Nginxプロジェクトのリポジトリを含めてインストールします:
vi /etc/yum.repos.d/nginx.repo
[nginx] name =nginx repo baseurl =http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck =0 enabled =1
3MySQLのインストール
まず、Mariadbをインストールします。 MariadbはMySQLの無料フォークです。シェルで次のコマンドを実行します:
yum install mariadb mariadb-server net-tools
次に、MySQLのシステム起動リンクを作成し(システムが起動するたびにMySQLが自動的に起動するように)、MySQLサーバーを起動します。
systemctl enable mariadb.service
systemctl start mariadb.service
次に、ネットワークが有効になっていることを確認します。実行
netstat -tap | grep mysql
次のように表示されます:
[[メール保護]〜]#netstat -tap | grep mysql
tcp 0 0 0.0.0.0:mysql 0.0.0.0:* LISTEN 10623 / mysqld
実行
mysql_secure_installation
ユーザーrootのパスワードを設定するには(そうでない場合は、誰でもMySQLデータベースにアクセスできます!):
[[email protected]〜]#mysql_secure_installation
/ usr / bin / mysql_secure_installation:379行目:find_mysql_client:コマンドが見つかりません
注:このスクリプトのすべての部分を実行することは、本番環境で使用するすべてのMariaDBサーバーに推奨されます。
各ステップを注意深くお読みください!
MariaDBにログインして保護するには、rootユーザーの現在の
パスワードが必要です。 MariaDBをインストールしたばかりで、
rootパスワードをまだ設定していない場合、パスワードは空白になります。
ここで、Enterキーを押すだけです。
rootの現在のパスワードを入力してください(noneの場合は入力してください):
OK、正常に使用されたパスワード、次に進みます...
rootパスワードを設定すると、適切な認証なしに誰もMariaDB
rootユーザーにログインできないようになります。
ルートパスワードを設定しますか? [Y / n] <-ENTER
新しいパスワード:<-yourrootsqlpassword
新しいパスワードを再入力:<-yourrootsqlpassword
パスワードが正常に更新されました!
特権テーブルを再読み込みしています。 。
...成功!
デフォルトでは、MariaDBインストールには匿名ユーザーがあり、
ユーザーアカウントを作成しなくても誰でも
MariaDBにログインできます。
これはテストのみを目的としており、インストールを少しスムーズにすることを目的としています。
本番環境に移行する前にそれらを削除する必要があります。
匿名ユーザーを削除しますか? [Y / n] <-ENTER
...成功!
通常、rootは「localhost」からの接続のみを許可する必要があります。これにより、
誰かがネットワークからルートパスワードを推測できないようになります。
rootログインをリモートで禁止しますか? [Y / n] <-ENTER
...成功!
デフォルトでは、MariaDBには「test」という名前のデータベースが付属しており、誰でも
アクセスできます。これもテストのみを目的としているため、
本番環境に移行する前に削除する必要があります。
テストデータベースを削除してアクセスしますか? [Y / n] <-ENTER
-テストデータベースを削除しています...
...成功しました!
-テストデータベースの権限を削除しています...
...成功!
特権テーブルをリロードすると、これまでに行われたすべての変更が
すぐに有効になります。
特権テーブルを今すぐリロードしますか? [Y / n] <-ENTER
...成功!
クリーンアップ...
すべて完了です。上記のすべての手順を完了すると、MariaDBの
インストールは安全になります。
MariaDBをご利用いただきありがとうございます!
[[メール保護]〜]#
[[メール保護]〜]#mysql_secure_installation
4Nginxのインストール
Nginxはnginx.orgからパッケージとして入手でき、次のようにインストールできます。
yum install nginx
次に、nginxのシステム起動リンクを作成して起動します:
systemctl enable nginx.service
systemctl start nginx.service
ポート80がすでに使用されているなどのエラーが発生する可能性があります。エラーメッセージは次のようになります
[[email protected]〜]#service nginx start
nginxの開始:nginx:[emerg] bind()to 0.0.0.0:80 failed(98:アドレスはすでに使用されています)
nginx: [emerg] bind()to 0.0.0.0:80 failed(98:アドレスはすでに使用中)
nginx:[emerg] bind()to 0.0.0.0:80 failed(98:アドレスはすでに使用中)
nginx:[emerg] bind()to 0.0.0.0:80 failed(98:アドレスはすでに使用中)
nginx:[emerg] bind()to 0.0.0.0:80 failed(98:アドレスはすでに使用中) use)
nginx:[emerg]はまだバインドできませんでした()
#pre>それからそれはそこでapacheサービスが実行されている可能性があることを意味します。次のようにサービスを停止し、NGINXのサービスをさらに開始します
systemctl stop httpd.service
yum remove httpd
systemctl disable httpd.servicesystemctl enable nginx.service
systemctl start nginx.serviceそして、ファイアウォールでhttpポートとhttpsポートを開きます
Firewall-cmd --permanent --zone =public --add-service =http
Firewall-cmd --permanent --zone =public --add-service =https
firewall-cmd --リロードシェルでの出力は次のようになります。
[[email protected]〜]#firewall-cmd --permanent --zone =public --add-service =http
success
[[email protected]〜]#firewall-cmd- -permanent --zone =public --add-service =https
success
[[email protected]〜]#firewall-cmd --reload
success
[[email protected ]〜]#WebサーバーのIPアドレスまたはホスト名をブラウザ(例:http://192.168.1.105)に入力すると、nginxのウェルカムページが表示されます。
Cent OS