Nginx虚拟主机怎么配置(nginx,开发技术)

时间:2024-05-03 17:28:28 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

一、Nginx虚拟主机的配置

虚拟主机:通常情况下,为了使每个服务器可以供更多用户使用,可以将一个服务器分为很多虚拟的子服务器,每个子服务器都是互相独立的。这些服务器是根据虚拟化技术分出来的,这样,一台服务器就可以虚拟成很多台子服务器。我们把子服务器叫做虚拟主机。我们搭建好Nginx服务器之后,此时只有一台Nginx服务器,这时如果我们对这台服务器进行虚拟主机配置,就可以将一台Nginx服务器分割为多台独立的子服务器。

Nginx中配置虚拟主机的步骤主要有两个:

1、创建虚拟主机IP

通过ifconfig查看自己的主机ip,然后根据主机ip创建虚拟主机Ip。

命令:ifconfig eth2:2 121.42.41.145 broadcast 121.42.43.255 netmask 255.255.252.0

执行后如图:

Nginx虚拟主机怎么配置

2、是绑定IP地址与虚拟主机。

nginx.conf:该文件是nginx的系统配置文件,建议不要在这上边改动。我们一般采用自定义文件,然后加载该文件,从而达到相同的效果。

建立配置文件在/usr/local/nginx/conf目录下创建xnzj.conf。

#========工作衍生进程数(建议设置成与cpu核数相同或者2倍)==========worker_processes1;#===========设置最大连接数==============events{worker_connections1024;}#============http协议的相关信息==============http{server{#===========要监听虚拟主机的IP地址与端口==========listen121.42.41.144:80;#===========该虚拟主机的名称===========server_name121.42.41.144;#===============该虚拟主机服务器的日志文件=========access_loglogs/server144.access.logcombined;#==============默认请求资源=============location/{roothtml/server144;#=====nginx会先找index.html如果没找到就找index.htmindexindex.htmlindex.htm;}}server{#===========要监听虚拟主机的IP地址与端口==========listen121.42.41.145:80;#===========该虚拟主机的名称===========server_name121.42.41.145;#===============该虚拟主机服务器的日志文件=========access_loglogs/server145.access.logcombined;#==============默认请求资源=============location/{roothtml/server145;indexindex.htmlindex.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_formatcombined'$remote_addr-$remote_user[$time_local]"$request"''$status$body_bytes_sent"$http_referer"''"$http_user_agent""$http_x_forwarded_for"';#==================日志文件access_log:off;表示关闭日志===========access_loglogs/access.logcombined;

日志切割:

为了使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}.logkill-USR1$(cat/usr/local/nginx/nginx.pid)

3、定时执行批处理文件 执行 crontab -e 命令添加以下内容

23 59 *** /bin/bash /usr/local/nginx/logs/cutlog.sh

三、Nginx缓存配置

当我们在浏览器中浏览某网页时,我们会把该网页上的一些信息(比如这个网页上的图片)存储到本地,当我们第二次浏览该网页的时候,这个网页上的某些信息就可以从本地加载,这样速度就会快很多。存储到本地的这些信息我们把其称为缓存。但是缓存过多的时候,缓存文件就会非常大,影响我们正常的上网活动。故而缓存需要定期清理。

配置方式:/usr/local/nginx/conf/nginx.conf 配置文件的http{ server{}}中的location下添加如下代码:

#====================缓存配置=============location~.*\.(jpg|png|swf|gif)${expires2d;#两天后清除}location~.*\.(css|js)?${expires:1h;#}

四、Nginx的gzip压缩配置

这里我们提到的压缩功能指的是gzip压缩技术。通过gzip压缩技术,可以使原来的网页的内容大小压缩成原来的30%,这样,用户在访问网页的时候,由于传输的内容比原内容小很多,故而访问速度会快很多。Nginx服务器支持gzip压缩技术,但是,需要进行配置。

配置方式:/usr/local/nginx/conf/nginx.conf 配置文件的http{ }中添加如下代码:

gzipon;#开启压缩gzip_min_lenth1k;#设置使用压缩的最小单位gzip_buffers416k;#创建压缩文件缓存大小gzip_http_version1.1;#使用压缩技术的协议及其版本gzip_vary:on;#开启判断客户端浏览器是否支持压缩技术

五、Nginx自动列目录配置  

  当客户端通过浏览器访问服务器上的某一文件夹的时候,如果该文件夹上有默认的首页文件,比如index.html,那么此时用户就会自动访问到index.html这个网页。但是,当没有index.html这一类默认首页的文件的时候,假设此时该文件夹还有其他文件,在没有配置自动列目录的功能的情况下,用户访问不到我们这个文件夹的内容。但当我们配置好了自动列目录功能之后,我们就可以看到该文件夹下所有文件的一个列表,该列表目录是自动列的。

实现自动列目录需要两个条件:

1.访问的文件夹下不存在index之类的默认首页文件。

2.服务器配置了自动列目录功能。

配置方式:/usr/local/nginx/conf/nginx.conf 配置文件的http{ server{}}中添加 如下代码:

location/{roothtml;indexindex.htmlindex.htm;autoindexon;#开启自动列目录}
 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:Nginx虚拟主机怎么配置的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:C语言基于EasyX库怎么实现有图形界面钟表下一篇:

11 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18