序文
nginxの(エンジンX)は、高性能HTTP及びリバースプロキシサーバでIMAP / POP3 / SMTPサーバです。。本実施例の基本的な手順をインストールして設定することはnginxのCentOSの7を示しています。
環境説明
CentOSの7(最小インストール)
$ cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
ステップ
ステップ1:YUMソースの追加
nginxのソースは、デフォルトではyum、yumのソースを使用することができるか、EPELの公式サイト、公式ウェブサイトを使用して、本実施形態のyumのソースではありません。
$ sudo rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
yumのソースをインストールした後、あなたが見ることができます。
$ sudo yum repolist
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
repo id repo name status
base/7/x86_64 CentOS-7 - Base 9,911
extras/7/x86_64 CentOS-7 - Extras 368
nginx/x86_64 nginx repo 108
updates/7/x86_64 CentOS-7 - Updates 1,041
repolist: 11,428
それは見つけることができ nginx repo
、すでにこのマシンにインストールされています。
ステップ2:マウント
nginxのインストールyumを、それは、コマンド非常に簡単です。
$ sudo yum install nginx
ステップ3:設定nginxのサービス
設定したブート
$ sudo systemctl enable nginx
サービスを開始
$ sudo systemctl start nginx
ストップサービス
$ sudo systemctl restart nginx
一般的な再構成した後、あなたはリロードを使用することができ、サービスを再起動したくないので、リロード。
$ sudo systemctl reload nginx
ステップ4:オープンファイアウォールポート
デフォルトのファイアウォールfirewalldが閉じたHTTPサービス(80個のポートを開く)で使用CentOS7。
$ sudo firewall-cmd --zone=public --permanent --add-service=http success $ sudo firewall-cmd --reload success
開封後、あなたが開くようにファイアウォールのすべてのサービスを見ることができます
$ sudo sudo firewall-cmd --list-service
ssh dhcpv6-client http
あなたが見ることができ、システムは、HTTPサービスをオープンしました。
リバースプロキシ
リバースプロキシ設定を参照することができ、非常に便利なnginxのリバースプロキシである Module1標準ngx_http_proxy_moduleを 。この記事では疲れていません。
CentOSのSELinuxの7、リバースプロキシの使用は、ネットワークアクセスを開く必要があることに留意されたいです。
$ sudo setsebool httpd_can_network_connect 1
ネットワーク権限を開いた後、あなたは、リバースプロキシを使用することができます。
他のポートのバインド
結合ポートnginxのデフォルトはhttpプロトコルのデフォルトのポート、ポート番号である:80
他のポートをバインドする必要がある場合は、SELinuxの設定に注意を払う必要があります
例えば:8081ポートをバインドしますが、それは不可能、一般的に次のように与えられ、開始することができます
YYYY/MM/DD hh:mm:ss [emerg] 46123#0: bind() to 0.0.0.0:8081 failed (13: Permission denied)
この時点では、SELinuxの設定を変更する必要があります。私たちは、SELinuxの管理ツールを使用して semanage
より便利に動作します。
インストール semanage
次のコマンドを使用して、
$ sudo yum install policycoreutils-python
このポートを使用するプロトコルの他のタイプがある場合は次に見ます
$ sudo semanage port -l | grep 8081
transproxy_port_t tcp 8081
結果は、他のタイプ、タイプを占領されたことを示す、返されます transproxy_port_t
。
我々はまた、SELinuxのでnginxのの種類を見ている http_port_t
ポートにバインド
$ sudo semanage port -l | grep http_port_t
http_port_t tcp 80, 81, 443, 488, 8008, 8009, 8443, 9000 pegasus_http_port_t tcp 5988
最初の行が http_port_t
含まれていません 8081
。このポート。修正する必要がある 8081
にポートを http_port_t
タイプ。
$ sudo semanage port -m -p tcp -t http_port_t 8081
他のプロトコルタイプは、あなたがバインドするポートを使用しないようにする場合は、のような 8001
、私たちはただのSELinuxに追加することができます。
$ sudo semanage port -l | grep 8001
$ sudo semanage port -a -p tcp -t http_port_t 8001
この時点で、あなたはnginxのを再起動することができます。
結論
この記事では7 yumのnginxの、コンフィギュレーション・サービスをインストール下のCentOSを示しています。
参考資料
nginxのバイナリリリースのインストール
ngx_http_proxy_moduleモジュールを
SELinuxのでnginxのとnginxのプラスを使用して