アウトライン
フロントエンドとして、私たちは次のことを乾燥させるためにnginxのを使用することを学ばなければならないと思います:
- 静的リソース演技
- リバースプロキシ(HTTPSを追加)の設定します
- キャッシュ設定
- セットのログ
- SMTPサービスの展開
- 設定しRedisのキャッシュ(選択)
ここで私は再びリズム11研究に従って、開発する際に、後で参照するために記録された経験は、我々はそれが他の人に便利であると考えています。
参考文献:
逆プロキシの設定
なぜそれがリバースプロキシと呼ばれているのですか?プロキシのほとんどがプロキシクライアントであり、ので、私たちは、プロキシサーバーをしたい場合は、もし逆の、それはリバースプロキシと呼ばれているよう。だから我々は、プロキシリバースプロキシと呼ばれるプロキシサーバーを置きます。
nginxのリバースプロキシは、内部の設定だけでproxy_pass命令を使用する必要があります。この特定の文書にはモジュールのngx_http_proxy_module。例としては、次のとおりです:
events {
# worker_connections 1024; ## Default: 1024
}
http {
server {
listen 8767;
server_name 192.168.2.32;
location / {
root /Users/zhouyang/Documents/tencent/test/local-nginx;
}
location /baidu {
proxy_pass http://www.baidu.com;
}
}
}
私たちは、bashので次のコマンドを実行し、その後、オープン192.168.2.32:8767/baiduが自動的にBaiduのにジャンプします。(注意:192.168.2.32ここにあなたのIPアドレスを変更します)。
nginx -s quit // 优雅退出
nginx -c /Users/zhouyang/Documents/tencent/test/local-nginx/nginx.conf // 使用指令目录下的配置文件启动 nginx
設定ジャンプ
1.ジャンプURL。URLのジャンプは、次のようにコードを読み取ることができ、また、非常に簡単です:
events {
# worker_connections 1024; ## Default: 1024
}
http {
server {
listen 8767;
server_name 192.168.2.32;
location / {
root /Users/zhouyang/Documents/tencent/test/local-nginx;
}
location /baidu {
proxy_pass http://www.baidu.com;
}
location /yaya {
return 302 /baidu;
}
}
}
私たちは、その後、オープン192.168.2.32:8767/yaya、それが自動的に最終的には自動的にBaiduのにジャンプし、192.168.2.32:8767/yayaにジャンプします、bashで以下のコマンドを実行します。(注意:192.168.2.32ここにあなたのIPアドレスを変更します)。
nginx -s quit // 优雅退出
nginx -c /Users/zhouyang/Documents/tencent/test/local-nginx/nginx.conf // 使用指令目录下的配置文件启动 nginx
2.リファラを応じてスキップします。URLのジャンプは、次のようにコードを変更することができ、また、非常に簡単です。この特定の文書にはモジュールのngx_http_referer_module。
events {
# worker_connections 1024; ## Default: 1024
}
http {
server {
listen 8767;
server_name 192.168.2.32;
location / {
root /Users/zhouyang/Documents/tencent/test/local-nginx;
}
location /haha {
valid_referers none blocked server_names
*.example.com example.* www.example.org/galleries/
~\.google\.;
if ($invalid_referer = '') {
return 401;
}
}
location /baidu {
proxy_pass http://www.baidu.com;
}
location /yaya {
return 302 /baidu;
}
}
}
私たちは、401禁断のを見るでしょう、そしてオープン192.168.2.32:8767/haha、bashで以下のコマンドを実行します。(注意:192.168.2.32ここにあなたのIPアドレスを変更します)。
注意:内部変数が自動的に空の文字列にマッチinvalid_referer $を割り当てられている場合、それは文字列が自動的に「1」に割り当てられていると一致しない場合はnginxのベースとのマッチングvalid_referersは、記載されています。
nginx -s quit // 优雅退出
nginx -c /Users/zhouyang/Documents/tencent/test/local-nginx/nginx.conf // 使用指令目录下的配置文件启动 nginx
IPアドレスに基づいてアクセスを制御します
我々はまた、IPアドレス、禁止IPアクセスの一部に基づいてアクセスを制御することができます。例としては、次のとおりです:
events {
# worker_connections 1024; ## Default: 1024
}
http {
server {
listen 8767;
server_name 192.168.2.32;
location / {
deny 192.168.2.32;
root /Users/zhouyang/Documents/tencent/test/local-nginx;
}
location /haha {
valid_referers none blocked server_names
*.example.com example.* www.example.org/galleries/
~\.google\.;
if ($invalid_referer = '') {
return 401;
}
}
location /baidu {
proxy_pass http://www.baidu.com;
}
location /yaya {
return 302 /baidu;
}
}
}
とりわけ、私たちは192.168.2.32アクセス192.168.2.32:8767を禁止しますが、nginxのマッチングメカニズムので、または他のルートにアクセスすることができます。
ロードバランシング
我々はまた、ここでは特定の文書のロードバランシングを行うことができますモジュールngx_http_upstream_moduleを。
私は、あなたが文書を見て、情報を見つけることができ、深さで勉強するために、綿密な調査を持っていません。
HTTPSを追加
私はまだのために適用されますので、AWS EC2追加するにサインアップした後、その戻ってくるのを待ちます。