[TOC]
記事のディレクトリ
バージョン番号を非表示にするには、まず、設定しnginxの
1.1、コンフィギュレーション・ファイル方式を変更します
1.2、ソース変更方法
第二に、変更ユーザーおよびグループnginxの
2.1、ユーザーとグループを指定するには、設定ファイルを変更します
第三には、configure nginxのウェブキャッシング時間
第四に、構成ログの分割
第五に、接続タイムアウトを達成するために
nginxのインストールには、事前に設定されている、と私のブログを参照する必要があるかもしれない、とのリンク:nginxの設定
バージョン番号を非表示にするには、まず、設定しnginxの
本番環境では、我々は避けセキュリティ侵害リークするために、nginxのバージョン番号を非表示にする必要があります
チェック方法
Windowsのクライアントビューアnginxのバージョン番号にシオマネキツールを使用します
システムビューのCentOSで使用する「カール-I URL」コマンド
隠された方法のnginxのバージョン番号
コンフィギュレーション・ファイル方式を変更します。
ソースコードの法律を変更します
1.1、コンフィギュレーション・ファイル方式を変更します
1、最初の基本的な情報のバージョンを確認
curl -I http://自己的IP地址
2は、nginxの設定ファイルには、追加する:設定オプションの値がオフserver_tokensです
vim /usr/local/nginx/conf/nginx.conf
http {
include mime.types;
default_type application/octet-stream;
#下面添加一段,关闭版本显示
server_tokens off;
3、サービスを再起動します
//先关闭服务,再开启服务
service nginx stop
service nginx start
バージョンを表示する4、次いでカールコマンド
1.2、ソース変更方法
nginxのソースコードファイル/pot/nginx-1.12.0/src/core/nginx.h
あなたが自由に設定することができ、バージョン情報が含まれています
再コンパイル、インストール、隠されたバージョン情報
図1に示すように、修正されたバージョン番号
#先把刚才添加的那段话的 off(关闭),改成 on(开启)
vim /usr/local/nginx/conf/nginx.conf
cd /opt/nginx-1.12.2/src/core/
vim /opt/ningx-1.12.2/src/core/nginx.h
define nginx_version 1012002
define NGINX_VERSION "1.1.1" //自定义一个版本号
define NGINX_VER "nginx/" NGINX_VERSION
2. [設定の編集
cd nginx-1.12.2/
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module
make && make install
3、サービス、ビューのバージョンを開始
#在启动服务
service nginx stop
service nginx start
#在查看,就会发现有一个我们自己伪造的一个版本号
curl -I http://IP地址/
Sercer: nginx/1.1.1 #伪造的版本号
注:バージョン番号は成功した偽造されていない場合は、表示されたコンフィギュレーション・ファイルのバージョンダウンが終了してもよいし、表示されません。解決策:削除server_tokensオフ。
第二に、変更ユーザーおよびグループnginxの
nginxの実行中のプロセスがファイルを読むためにWebサイトへのアクセス制御を実現するために、ユーザーとグループの支援を必要とします
Nginxは誰のデフォルトのユーザーアカウントとグループアカウントは、一般的に修正する必要があります
修正方法:
インストール時に指定したユーザーとグループをコンパイルします
ユーザーとグループを指定するには、設定ファイルを変更します。
2.1、ユーザーとグループを指定するには、設定ファイルを変更します
vim /usr/local/nginx/conf/nginx.conf
#user nobody;
//去掉前面注释符“ # ”,修改 nobody 指定用户与组 nginx nginx;
nginxのによって作成されたルートの子プロセスによって作成されたメインプロセス
第三には、configure nginxのウェブキャッシング時間
Webページのデータをクライアントにnginxの場合は、キャッシュが直接再三の要求より速いアクセス速度を避けるために、同じ内容を返す将来の要求を容易にするための時間を提供することができます
静的なページのための一般的な設定は、動的なページは、キャッシュ時間を設定していません
Windowsクライアントにページバッファ時間を表示することができますフィドラー使用します
設定方法:
特定のコンテンツにパラメータを追加し、設定ファイルを変更することができます。httpセグメント、またはサーバセグメント、セグメントまたは場所で期限切れ
1. nginxのの次のサイトディレクトリに画像をコピーします。
#在自己的共享文件中 找到" game.jpg "
mkdir /abc
mount.cifs //192.168.56.1/lamp7 /abc
cd /abc/wl
//我的图片在wl的包里
//复制图片 game.jpg 到站点目录下
cp /abc/wl/game.jpg /usr/local/nginx/html/
cd /usr/local/nginx/html
2、画像がページのコンテンツに追加されます
#修改
vim index.html
#在 Welcome to nginx 的下面添加一段
<img src="game.jpg"/>
3、nginxの設定ファイルを変更します
vim /usr/local/nginx/conf/nginx.conf
#在 http {}段,添加一个
location ~\.(gif|jepg|jpg|ico|bmp|png)$ {
root html;
expires 1d;
}
4、サービスを開始
#重启服务
service nginx restart
5、検証win10
第四に、構成ログの分割
nginxのの増加が時間を実行すると、ログが増加します。常にログファイルnginxのに注意を払うために実行している把握nginxのを容易にするために、必要
ログファイルには、大きな災害監視することには大きすぎます
ログファイルの定期的な切断
nginxのは、スケジュールされたタスク定期的にLinuxが自分のログ分割処理機能を持っていますが、自動的にスクリプトnginxの信号制御機能を切断ログインすることができ、およびログのカットではありません
ログ切削アイデアを書き込みスクリプト:
時間変数を設定します
保存ログ・パスが提供されています。
現在のログファイルの名前が変更されました
ログファイルを削除するのに長い時間
自動的に分割をログに記録し、通常のスクリプトを実行するためのcronタスクを設定します
1、セグメンテーションを実現するスクリプト
vim /opt/fenge.sh
#!/bin/bash
#Filename:fenge.sh
d=$(date -d "-1 day" "+%Y%m%d")
logs_path="/var/log/nginx"
pid_path="/usr/local/nginx/logs/nginx.pid"
[ -d $logs_path ] || mkdir -p $logs_path
mv /usr/local/nginx/logs/access.log ${logs_path}/test.com-access.log-$d
kill -USR1 $(cat $pid_path)
find $logs_path -mtime +30 | xargs rm -rf
2、スクリプトを実行します
chmod +x fenge.sh
./fengs.sh
//可以把当前时间修改为2019.12.29,(可以自定义)
date -s 2019-12-29
3は、定期的にスクリプトを実行するためのcronタスクを設定し、自動的に分割を記録します
执行周期性计划任务
crontab -e
0 1 * * * /opt/fengs.sh
第五に、接続タイムアウトを達成するために
同じことを避けるために、企業のウェブサイトで - - 顧客の接続の長期占領、
リソースの浪費は、コントロールを達成するために、対応する接続タイムアウトパラメータを提供することができます
接続のアクセス時間
接続パラメータを表示するために使用するフィドラーツール
説明するTimeoutパラメータ:
Keepalive_timeout
75秒のデフォルト、接続タイムアウトは、一般的にのみ、このパラメータを設定し、設けられた保持、サイトの状況に応じて設定することができ、またはhttpセグメント、サーバセグメントまたはセグメントに配置された位置で、閉鎖
Client_header_timeout
指定したクライアントは、タイムアウトヘッダーを待つ要求を送信します
Client_body_timeout
読み出し要求本体のタイムアウトを設定します
1、設定ファイルを変更します
cd /usr/local/nginx/conf
vim nginx.conf
#在 http {}段 :下面添加
keepalive_timeout 65 180;
client_header_timeout 80;
client_body_timeout 80;
//重启服务
service nginx restart