GNU/Linux >> Linux の 問題 >  >> Cent OS

GeoIPモジュールでNginxをインストールする方法

このチュートリアルでは、CentOSにNginx With GeoIPモジュールをインストールする方法を説明します。知らない人のために、国や都市のジオターゲティング用のNginxGeoIPモジュールを使用できます。いくつかの簡単な手順でインストールできます。ジオターゲティングレイヤーを使用して、ウェブサイトの一部を表示したり、エンドユーザーの地理的な場所に応じてトラフィックを分割したりできます。デフォルトでは、yumからモジュールをインストールする場合、NginxにはGeoIPモジュール(これはモジュール:HttpGeoipModule)が付属していないため、ソースからインストールし、モジュールをアクティブにします。

この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、サイトを独自のVPSでホストしていることを前提としています。インストールは非常に簡単で、ルートアカウントで実行されていますが、そうでない場合は、'sudoを追加する必要があります。 ルート権限を取得するコマンドに‘。 CentOSシステムにNginxWithGeoIPモジュールを段階的にインストールする方法を説明します。

GeoIPモジュールを使用してNginxをインストール

ステップ1.まず、システムが最新であることを確認することから始めましょう。

sudo yum install epel-release
sudo yum update

ステップ2.すべてをインストールするには依存関係が必要です。

インストールにはコンパイル用のパッケージが必要です:

yum install gcc-c++ pre pcre-devel zlib zlib-devel -y

ステップ3.Nginxをダウンロードしてインストールします。

ここから、最新の安定バージョンのNginxをここからダウンロードし、GeoIPモジュールをサポートしてビルドします。

cd /opt/nginx/
wget https://nginx.org/download/nginx-1.21.5.tar.gz
tar -zxf nginx-1.21.5.tar.gz
cd nginx-1.21.5/
./configure
--prefix=/etc/nginx \
--sbin-path=/etc/nginx/sbin/nginx \
--conf-path=/etc/nginx/conf/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/run/nginx.pid \
--lock-path=/var/run/ninx.lock \
--user=nobody \
--with-http_geoip_module \
--with-http_gzip_static_module \
--with-http_secure_link_module \
--without-mail_pop3_module \
--without-mail_imap_module \
--without-mail_smtp_module \
--without-http_ssi_module

コンパイルが完了したら、次に次のコマンドを使用してNginxをインストールします:

make
make install

ステップ4.Nginxのinitスクリプトを作成します。

まず、ユーザーNginxをシステムに追加します。これは1回限りのコマンドです:

useradd -r nginx

ファイル/etc/init.d/nginxを設定する必要があります システムの起動時に実行するには:

wget -O /etc/init.d/nginx https://gist.github.com/sairam/5892520/raw/b8195a71e944d46271c8a49f2717f70bcd04bf1a/etc-init.d-nginx
chmod 0755 /etc/init.d/nginx
chown root:root /etc/init.d/nginx

最後に、Nginxを起動します:

systemctl restart nginx

ステップ5.CentOSシステムにGeoIPライブラリをインストールします。

次に、次のコマンドを実行してGeoIPライブラリをインストールします

sudo yum install geoip geoip-devel

インストールが正常に完了すると、ライブラリは/usr/share/GeoIP/GeoIP.datに保存されます。 最新のアップデートについては、こちらからダウンロードできます。

ステップ5.Nginxを構成する

次に、メインファイルを構成します:

nano /etc/nginx/conf/nginx.conf

次のファイルを追加します:

http {
[...]
geoip_country /usr/share/GeoIP/GeoIP.dat;
map $geoip_country_code $allowed_country {
default yes;
CN no;
}
[...]
}

その後、Nginx仮想ホストを構成します:

nano /etc/nginx/conf.d/yourdomain.conf

次の行を追加します:

server {
[...]
if ($allowed_country = no) {
return 444;
# # This means the server will stop processing, returns error 444 (The connection was reset),
# # And ignore always sending the response header.
# # Replace 444 by 403 if you want
}
[...]
}

上記の構成では、すべてのIPが受け入れられ、中国IP(CN)からのみ禁止されます。GeoIPデータベースにある国のコードについては、こちらを参照してください。

おめでとうございます!Nginx With GeoIPModuleが正常にインストールされました。LinuxシステムにNginxWithGeoIP Moduleをインストールするためにこのチュートリアルを使用していただき、ありがとうございます。追加のヘルプや役立つ情報については、公式を確認することをお勧めしますNginxのWebサイト。


Cent OS
  1. CentOS7にNginxを使用してWordPressをインストールする方法

  2. CentOS 7 /RHEL7にNginxを使用してphpMyAdminをインストールする方法

  3. CentOS7にSitemagicCMSをインストールする方法–Nginxを使用

  1. CentOS7にNginxを使用してphpMyAdminをインストールする方法

  2. CentOS7にRTMPモジュールを使用してNginxをインストールする方法

  3. CentOS7にNginxを使用してSuiteCRMをインストールする方法

  1. CentOS7にNginxでMediaWikiをインストールする方法

  2. Ubuntu16.04にNginxでMediaWikiをインストールする方法

  3. Ubuntu15.10にNginxを使用してMagentoをインストールする方法