欢迎来到小居数码网-一家分享数码知识,生活小常识的网站,希望可以帮助到您。

当前位置:生活小常识 > 数码知识 >
优质

nginx配置ip访问(如何配置基于ip的虚拟主机)

数码知识

张 星优秀作者

原创内容 来源:小居数码网 时间:2024-08-11 14:08:01 阅读() 收藏:28 分享:79

导读:您正在阅读的是关于【数码知识】的问题,本文由科普作家协会,生活小能手,著名生活达人等整理监督编写。本文有1226个文字,大小约为5KB,预计阅读时间4分钟。

今天要说的是Nginx如何配置虚拟主机。

如何配置基于ip的虚拟主机

需要说明的是:由于本文章是nginx系列文章中的一篇,文章里面很多其他的配置,可能前面的文章已经说讲过,然后后续就没有在介绍,如果出现有些配置没有讲,大家可能需要去看看前面的文章。

一、什么是虚拟主机

虚拟主机是一种特殊的软硬件技术,它可以将网络上的每一台计算机分成多个虚拟主机,每个虚拟主机可以独立对外提供www服务,这样就可以实现一台主机对外提供多个web服务,每个虚拟主机之间是独立的,互不影响的。

如下图:

通过nginx可以实现虚拟主机的配置,nginx支持三种类型的虚拟主机配置:

1、基于ip的虚拟主机

2、基于域名的虚拟主机

3、基于端口的虚拟主机

实际使用的过程中,我们一般常用的是用域名或是端口来区分web服务。只不过我这里为了讲的全面一点,会把三种配置都讲一讲。

二、Nginx配置文件的结构

nginx的配置文件结构如下:

......events {    .......}http{   .......   server{         .......         }   server{         .......         }}

每个server就是一个虚拟主机。

三、基于ip的虚拟主机配置

Linux操作系统允许添加IP别名,就是在一块物理网卡上绑定多个lP地址。这样就能够在使用单一网卡的同一个服务器上运行多个基于IP的虚拟主机。

应用场景

一台nginx服务器绑定两个ip:192.168.78.132、192.168.78.133,访问不同的ip请求不同的html目录,即:

访问http://192.168.78.132将访问html132目录下的html网页

访问http://192.168.78.133将访问html133目录下的html网页

i. 准备环境

创建192.168.78.132 的虚拟机,保证本地电脑和虚拟网络通畅。

在192.168.78.132上安装nginx。这个之前讲过nginx 的源码安装,大家可以去看看这篇文章:https:///zhangweizhong/p/11378512.html

ii. 绑定多ip

1、修改网络配置文件,进入到/etc/sysconfig/network-scripts,编辑ifcfg-ens33文件如下:

TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=no# BOOTPROTO=dhcp 注意区别!!!DEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=ens33UUID=26c2f3f8-62c5-4571-80e2-ca394cfd43daDEVICE=ens33ONBOOT=yesZONE=public# 注意区别IPADDR0=192.168.78.132PREFIX0=24IPADDR1=192.168.78.133PREFIX1=16

2、保存修改,重启网络: systemctl restart network

[root@bogon network-scripts]# systemctl restart network

这个是参照网上的资料,不明白的可以去这里看看具体如何操作:https://blog.csdn.net/u013887008/article/details/79589656

iii. 创建两个web网站

进入/usr/local/nginx 目录,将原来nginx的html目录拷贝两个目录 “html132”和“html133”,为了方便测试需要修改每个目录下的index.html内容使之个性化。

cd /usr/local/nginxcp -r html html132cp -r html html133

iv. 配置虚拟主机

修改/usr/local/nginx/conf/nginx.conf文件,添加两个虚拟主机,如下:

#user  nobody;worker_processes  1;#error_log  logs/error.log;#error_log  logs/error.log  notice;#error_log  logs/error.log  info;#pid        logs/nginx.pid;events {    worker_connections  1024;}http {    include       mime.types;    default_type  application/octet-stream;     sendfile        on;    keepalive_timeout  65;    #配置虚拟主机192.168.78.132    server {        #监听的ip和端口,配置192.168.78.132:80        listen       80;        #虚拟主机名称这里配置ip地址        server_name  192.168.78.132;        #所有的请求都以/开始,所有的请求都可以匹配此location        location / {             #使用root指令指定虚拟主机目录即网页存放目录             #比如访问http://ip/test.html将找到/usr/local/html3/test.html             #比如访问http://ip/item/test.html将找到/usr/local/html3/item/test.html             root   /usr/local/nginx/html132;             #指定欢迎页面,按从左到右顺序查找             index  index.html index.htm;        }    }    #配置虚拟主机192.168.78.133    server {        listen       80;        server_name  192.168.78.133;        location / {            root   /usr/local/nginx/html133;            index  index.html index.htm;        }    }}

v. 测试

重新启动nginx,观察端口监听状态:

访问http://192.168.78.132/

访问http://192.168.78.133/

四、最后

以上,就把nginx 基于ip的配置虚拟主机讲完了。后面会继续讲基于域名和端口的配置。

上面就是小居数码小编今天给大家介绍的关于(如何配置基于ip的虚拟主机)的全部内容,希望可以帮助到你,想了解更多关于数码知识的问题,欢迎关注我们,并收藏,转发,分享。

94%的朋友还想知道的:

(252)个朋友认为回复得到帮助。

部分文章信息来源于以及网友投稿,转载请说明出处。

本文标题:nginx配置ip访问(如何配置基于ip的虚拟主机):http://sjzlt.cn/shuma/154626.html

猜你喜欢