nginx 基于IP的多虚拟主机配置

nginx 基于IP的多虚拟主机配置

1.基于IP的多虚拟主机配置

1.1 网络配置

linux操作系统支持IP别名的添加。

nginx 服务器提供的每台虚拟主机对应配置一个不同的IP,因此需要将网卡设置为同时能够监听多个IP地址。

先查看当前的网络配置:ifconfig

再为eth1(对应自己的网卡名称)添加IP别名:192.168.1.66 和 192.168.1.99

c 复制代码
ifconfig eth1:0 192.168.1.66 netmask 255.255.255.0 up 
ifconfig eth1:1 192.168.1.99 netmask 255.255.255.0 up

接着查看配置结果:ifconfig

比之前多了两个网络配置:eth1:0 和 eth1:1

1.2 配置nginx

来到nginx的安装目录,并复制html-66和html-99:

c 复制代码
cd /usr/local/nginx 
cp -r html html-66 
cp -r html html-99

编辑html-66和html-99的首页:

c 复制代码
vim ./html-66/index.html 
vim ./html-99/index.html

改为可以区分的显示页面即可,后面用来测试的显示页面,随意发挥。

接着配置nginx.conf

c 复制代码
vim ./conf/nginx.conf

加入以下内容

c 复制代码
    server {
        listen 80;
        server_name 192.168.1.66;
        location / {
            root html-66;
            index  index.html index.htm;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html-66;
        }
    }

    server {
        listen 80;
        server_name 192.168.1.99;
        location /{
            root html-99;
            index  index.html index.htm;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html-99;
        }
    }

配置完成保存退出::wq

说明:

  • listen 80; 监听80端口

  • server_name 虚拟主机的指令,这里基于IP配置

  • root html的根目录

  • index root根目录下的首页

先检查nginx.conf 配置语法是否正确:

cd sbin nginx -t

启动nginx

nginx

nginx 关停和重启命令

nginx -s stop nginx -s reload

到目前为止全部配置完成,接下来测试

curl http://192.168.1.66 curl http://192.168.1.99

能正常的打印出 html-66/html-99 目录下的index.html 页面说明成功了

相关推荐
阿标在干嘛11 小时前
Nginx一个配置错误,流量损失30%!这是我们的完整排查记录
运维·nginx
IT菜鸟程1 天前
Ubuntu 下 apt 版 Nginx 升级为源码编译版本完整操作指南(1.24.0 → 1.30.4 实战)
linux·nginx·ubuntu
sbjdhjd1 天前
从 7 字符文件名拼接到二维数组取值:PHP 无参函数限制下的受控靶场复盘 | (7字符绕过)
网络·nginx·安全·网络安全·云计算·php·apache
NGINX开源社区1 天前
NGINX Gateway Fabric 2.6:F5 WAF for NGINX 集成 Gateway API
nginx·gateway·fabric
小白羊丨2 天前
HTTP/2 如何缓解 HTTP/1.1 阻塞;长连接对 Nginx 有什么影响?
网络协议·nginx·http
xixiaoyunya3 天前
Docker 容器化部署实战:从零搭建一套完整的 Nginx + Node.js + MySQL + Redis 项目环境
nginx·docker·node.js
SendTomo3 天前
【技术交流】从0到1构建一个汉字学习平台:汉字吧(hanzi8.com)的技术架构猜想
redis·mysql·nginx·php·个人开发
滨哥GPT3 天前
Codex新增文件上传后为什么小文件正常,大文件总失败?Multipart、Body Limit与Nginx限制排查
nginx·ai编程·文件上传·codex·multipart
come112344 天前
Nginx `location` 配置说明(后端开发版)
运维·nginx
PHP实战开发录4 天前
PHP文件上传成功为什么页面却找不到
开发语言·nginx·php·开发