一、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
执行后如图:
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
三、Nginx缓存配置
当我们在浏览器中浏览某网页时,我们会把该网页上的一些信息(比如这个网页上的图片)存储到本地,当我们第二次浏览该网页的时候,这个网页上的某些信息就可以从本地加载,这样速度就会快很多。存储到本地的这些信息我们把其称为缓存。但是缓存过多的时候,缓存文件就会非常大,影响我们正常的上网活动。故而缓存需要定期清理。
配置方式:/usr/local/nginx/conf/nginx.conf 配置文件的http{ server{}}中的location下添加如下代码:
#====================缓存配置============= location ~.*\.(jpg|png|swf|gif)${ expires 2d;#两天后清除 } location ~.*\.(css|js)?${ expires:1h;# }
四、Nginx的gzip压缩配置
这里我们提到的压缩功能指的是gzip压缩技术。通过gzip压缩技术,可以使原来的网页的内容大小压缩成原来的30%,这样,用户在访问网页的时候,由于传输的内容比原内容小很多,故而访问速度会快很多。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;#开启判断客户端浏览器是否支持压缩技术
五、Nginx自动列目录配置
当客户端通过浏览器访问服务器上的某一文件夹的时候,如果该文件夹上有默认的首页文件,比如index.html,那么此时用户就会自动访问到index.html这个网页。但是,当没有index.html这一类默认首页的文件的时候,假设此时该文件夹还有其他文件,在没有配置自动列目录的功能的情况下,用户访问不到我们这个文件夹的内容。但当我们配置好了自动列目录功能之后,我们就可以看到该文件夹下所有文件的一个列表,该列表目录是自动列的。
实现自动列目录需要两个条件:
1.访问的文件夹下不存在index之类的默认首页文件。
2.服务器配置了自动列目录功能。
配置方式:/usr/local/nginx/conf/nginx.conf 配置文件的http{ server{}}中添加 如下代码:
location / { root html; index index.html index.htm; autoindex on;#开启自动列目录 }
以上是Nginx虚拟主机怎么配置的详细内容。更多信息请关注PHP中文网其他相关文章!

NGINX和Apache都是强大的Web服务器,各自在性能、可扩展性和效率上有独特的优势和不足。1)NGINX在处理静态内容和反向代理时表现出色,适合高并发场景。2)Apache在处理动态内容时表现更好,适合需要丰富模块支持的项目。选择服务器应根据项目需求和场景来决定。

NGINX适合处理高并发请求,Apache适合需要复杂配置和功能扩展的场景。1.NGINX采用事件驱动、非阻塞架构,适用于高并发环境。2.Apache采用进程或线程模型,提供丰富的模块生态系统,适合复杂配置需求。

NGINX可用于提升网站性能、安全性和可扩展性。1)作为反向代理和负载均衡器,NGINX可优化后端服务和分担流量。2)通过事件驱动和异步架构,NGINX高效处理高并发连接。3)配置文件允许灵活定义规则,如静态文件服务和负载均衡。4)优化建议包括启用Gzip压缩、使用缓存和调整worker进程。

NGINXUnit支持多种编程语言,通过模块化设计实现。1.加载语言模块:根据配置文件加载相应模块。2.应用启动:调用语言运行时执行应用代码。3.请求处理:将请求转发给应用实例。4.响应返回:将处理后的响应返回给客户端。

NGINX和Apache各有优劣,适合不同场景。1.NGINX适合高并发和低资源消耗场景。2.Apache适合需要复杂配置和丰富模块的场景。通过比较它们的核心特性、性能差异和最佳实践,可以帮助你选择最适合需求的服务器软件。

确认 Nginx 是否启动的方法:1. 使用命令行:systemctl status nginx(Linux/Unix)、netstat -ano | findstr 80(Windows);2. 检查端口 80 是否开放;3. 查看系统日志中 Nginx 启动消息;4. 使用第三方工具,如 Nagios、Zabbix、Icinga。

要关闭 Nginx 服务,请按以下步骤操作:确定安装类型:Red Hat/CentOS(systemctl status nginx)或 Debian/Ubuntu(service nginx status)停止服务:Red Hat/CentOS(systemctl stop nginx)或 Debian/Ubuntu(service nginx stop)禁用自动启动(可选):Red Hat/CentOS(systemctl disable nginx)或 Debian/Ubuntu(syst


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

Dreamweaver Mac版
视觉化网页开发工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。