仮想ホスト: 通常、各サーバーをより多くのユーザーが利用できるようにするために、サーバーは多くの仮想サブサーバーに分割できます。すべて互いに独立しています。これらのサーバーは仮想化テクノロジーに基づいて分離されているため、1 つのサーバーを多数のサブサーバーに仮想化できます。サブサーバーを仮想ホストと呼びます。 Nginx サーバーをセットアップすると、現時点では Nginx サーバーは 1 つだけですが、このサーバー上に仮想ホストを構成すると、1 つの Nginx サーバーを複数の独立したサブサーバーに分割できます。
Nginx で仮想ホストを構成するには、主に 2 つの手順があります:
1. 仮想ホスト IP を作成します
ifconfig を通じて自分のホスト IP を確認し、ホスト IP に基づく仮想ホスト ホスト IP。
コマンド: ifconfig eth2:2 121.42.41.145 ブロードキャスト 121.42.43.255 ネットマスク 255.255.252.0
実行後の図に示すように:
2. IP アドレスと仮想ホストをバインドします。
nginx.conf: このファイルは nginx のシステム設定ファイルです。変更しないことをお勧めします。通常、カスタム ファイルを使用し、そのファイルをロードして同じ効果を実現します。
/usr/local/nginx/conf ディレクトリに構成ファイル xnzj.conf を作成します。
#========工作衍生进程数(建议设置成与cpu核数相同或者2倍)========== worker_processes 1; #===========设置最大连接数============== events { worker_connections 1024; } #============http协议的相关信息============== http { server { #===========要监听虚拟主机的IP地址与端口========== listen 121.42.41.144:80; #===========该虚拟主机的名称=========== server_name 121.42.41.144; #===============该虚拟主机服务器的日志文件========= access_log logs/server144.access.log combined; #============== 默认请求资源============= location / { root html/server144; #===== nginx会先找index.html 如果没找到就找index.htm index index.html index.htm; } } server { #===========要监听虚拟主机的IP地址与端口========== listen 121.42.41.145:80; #===========该虚拟主机的名称=========== server_name 121.42.41.145; #===============该虚拟主机服务器的日志文件========= access_log logs/server145.access.log combined; #============== 默认请求资源============= location / { root html/server145; index index.html index.htm; } } }
/usr/local/nginx/html
/usr/local/nginx/html/server144/index.html ;/usr / に対応する仮想ホストのデフォルト リソースを作成します。 local/nginx/html/server145/index.html
Nginx にカスタマイズされた設定ファイル (私の設定ファイル: xnzj.conf) をロードさせます
コマンドを実行します: / usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/xnzj.conf
Nginx サーバーは実行時に、さまざまな操作が行われ、その主要な操作情報がファイルに記録され、これをログファイルと呼びます。ログ ファイルの記録はフォーマットされており、システムのデフォルトのフォーマットに従って記録することも、カスタマイズしたフォーマットに従って記録することもできます。 log_format ディレクティブを使用して、Nginx サーバーのログ ファイルの記録形式を設定できます。
設定方法: nginx.conf ファイルを開き、コメント化された下位コードを有効にします。
#combined:日志输出格式 #remote_addr 客户端请求地址 #remote_user:客户端用户名 #request:请求的地址(服务器资源位置) #status:用户的请求状态 #body_bytes_sent:服务器响应的资源大小(字节数), #http_referer:源网页 #http_user_agent:客户端浏览器信息 #http_x_forwarded_for:客户端Ip地址 log_format combined '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; #==================日志文件 access_log:off;表示关闭日志=========== access_log logs/access.log combined;
ログの切断:
Nginx のログ ファイルの保存をより合理的かつ整然としたものにするためには、ログ ファイルを別々に保存する必要があります。たとえば、時間ごとに分けることができます。ファイル ファイルに保存され、明日のログ ファイルは別の新しいファイルに保存されます。このとき、ログファイルのカット操作を使用します。
ログの切断手順:
1. バッチ ファイルを作成します
/usr/local/nginx/logs ディレクトリで実行します [root@iZ28b4kreuaZ logs]# touch Cutlog.sh
2. ファイルにコンテンツを追加します:
D=$(date +%Y%m%d) mv /usr/local/nginx/logs/access.log ${D}.log kill -USR1 $(cat /usr/local/nginx/nginx.pid)
3. バッチ ファイルを定期的に実行します。crontab -e コマンドを実行して、次のコンテンツを追加します
23 59 *** /bin/bash /usr/local/nginx/logs/cutlog.sh
いつ ブラウザで Web ページを閲覧すると、Web ページ上の一部の情報 (Web ページ上の画像など) がローカルに保存されます。Web ページを 2 回目に閲覧するとき、一部の情報はローカルに保存されます。 Web ページ上の内容はローカルに保存され、ローカルからロードできるため、はるかに高速になります。ローカルに保存されるこの情報はキャッシュと呼ばれます。しかし、キャッシュが多すぎると、キャッシュ ファイルが非常に大きくなり、通常のインターネット活動に影響を及ぼします。したがって、キャッシュを定期的にクリーンアップする必要があります。
設定方法: /usr/local/nginx/conf/nginx.conf 設定ファイルの http{server{}} 内の場所に次のコードを追加します:
#====================缓存配置============= location ~.*\.(jpg|png|swf|gif)${ expires 2d;#两天后清除 } location ~.*\.(css|js)?${ expires:1h;# }
ここで説明した圧縮機能は、gzip 圧縮テクノロジを指します。 gzip 圧縮技術により、元の Web ページのコンテンツ サイズを元のサイズの 30% に圧縮することができ、ユーザーが Web ページにアクセスする際、送信されるコンテンツがはるかに小さいため、アクセス速度が大幅に向上します。オリジナルのコンテンツ。 Nginx サーバーは gzip 圧縮テクノロジーをサポートしていますが、構成する必要があります。
設定方法: /usr/local/nginx/conf/nginx.conf 設定ファイルの http{ } に以下のコードを追加します:
gzip on;#开启压缩 gzip_min_lenth 1k;#设置使用压缩的最小单位 gzip_buffers 4 16k;#创建压缩文件缓存大小 gzip_http_version 1.1;#使用压缩技术的协议 及其版本 gzip_vary:on;#开启判断客户端浏览器是否支持压缩技术
クライアントがブラウザを介してサーバー上のフォルダーにアクセスするとき、そのフォルダーにデフォルトのホームページ ファイル (index.html など) が存在する場合、ユーザーは自動的にindex.html ページにアクセスします。ただし、index.html などのデフォルトのホームページ ファイルがない場合、この時点でフォルダー内に他のファイルがあると仮定すると、ユーザーは自動ディレクトリ一覧表示機能を設定せずにフォルダーのコンテンツにアクセスできません。ただし、自動ディレクトリ一覧表示機能を設定すると、フォルダー内のすべてのファイルの一覧が表示され、ディレクトリの一覧も自動的に表示されます。
ディレクトリの自動リストを実現するには、次の 2 つの条件が必要です:
1. アクセスしたフォルダーにインデックスなどのデフォルトのホームページ ファイルが存在しない。
2.服务器配置了自动列目录功能。
配置方式:/usr/local/nginx/conf/nginx.conf 配置文件的http{ server{}}中添加 如下代码:
location / { root html; index index.html index.htm; autoindex on;#开启自动列目录 }
以上がNginx仮想ホストを構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。