Nginx实现虚拟机

可以实现在同一台服务运行多个网站,而且网站之间互相不干扰。同一个服务器可能有一个ip,网站需要使用80端口。网站的域名不同。

区分不同的网站有三种方式:ip区分、端口区分、域名区分,显然通过IP区分是不太现实的,这里只验证后两种方式

1.配置nginx基于端口号的虚拟主机

1.1 nginx配置文件中添加一个server节点,这里server节点的域名都是localhost,只是端口号不同

1.2 将 /usr/local/nginx/路径下的html目录复制一份,命名为html81

修改html目录下的index.html如下:

hml81目录下的index.html修改如下:

1.3 重新加载配置文件:

cd /usr/local/nginx/bin

./nginx -s reload

然后测试虚拟主机:

通过浏览器访问80端口的虚拟主机:

通过浏览器访问81端口的虚拟主机:

注意:如果81端口访问不通,有可能是被防火墙拦截了!开放81端口即可:

[root@localhost nginx]# /sbin/iptables -I INPUT -p tcp --dport 81 -j ACCEPT

[root@localhost nginx]# /etc/rc.d/init.d/iptables save

2.nginx配置基于域名区分的虚拟主机——最有用的虚拟主机配置方式。

我们平时访问淘宝时只需要在浏览器地址栏中输入taobao.com便可以访问淘宝首页,这个”taobao.com”便是域名,而且”taobao.com”是一级域名,我们买域名买的便是一级域名,而”www.taobao.com”是二级域名。如果我们想在浏览器地址栏中输入域名访问我们自己的网站的话,可有两个途径,第一个途径是买一个属于自己的域名,访问这个域名需要经过DNS服务器(把域名解析为ip地址,保存的就是域名和ip之间的映射关系),DNS服务器就是为了将访问的域名对应到相应的IP上,所以最终还是通过IP实际访问网站的,如下:

注意,一个域名对应一个ip地址,一个ip地址可以被多个域名绑定。第二个途径是配置本地的hosts文件,如果hosts文件中有配置域名对应的ip,就不会去请求DNS服务器了,会直接用hosts中配置的ip地址去访问网页。 

2.1 hosts添加域名映射:在hosts文件中添加如下两个域名来进行测试:

2.2 修改nginx.conf配置,设置以域名方式区分虚拟主机,设置如下:

修改server监听的端口号均为80端口;

第一个server节点的server_name 设置为www.test81.com; location 节点root 值仍然为 html81, 当浏览器输入http://www.test81.com时,应该会访问到

/usr/local/nginx/html81路径下的index.html ,同理,第二个server节点只修改server_name为 www.test80.com; 即可(注意结尾的分号不能少)

修改保存后,重启nginx:

2.3测试:

参考资料:https://blog.csdn.net/yerenyuan_pku/article/details/73135376

nginx配置虚拟主机-端口号区分/域名区分的更多相关文章

  1. nginx配置虚拟主机vhost的方法详解

    Nginx vhost配置,可实现基于ip.端口号.servername的虚拟主机,同时可避免直接修改主配置文件.在nginx下配置虚拟主机vhost非常方便.这篇文章主要介绍了nginx配置虚拟主机 ...

  2. nginx配置虚拟主机之不同端口和不同IP地址

    配置nginx虚拟主机不同端口和不同ip地址,和上编nginx基于域名配置虚拟主机博文类似,请先参考. zxl.com域名不同端口,配置文件内容如下: 1 2 3 4 5 6 7 8 9 10 11 ...

  3. nginx 配置虚拟主机的三种方法

    nginx,一个server标签就是一个虚拟主机. 1.基于域名的虚拟主机,通过域名来区分虚拟主机——应用:外部网站 2.基于端口的虚拟主机,通过端口来区分虚拟主机——应用:公司内部网站,外部网站的管 ...

  4. nginx 配置虚拟主机

    文章转载自:http://www.ttlsa.com/html/1571.html 上篇说道我们的nginx是安装在/usr/local/nginx/ cd conf 我们现在把所有的虚拟主机放在一个 ...

  5. windows 下 nginx 配置虚拟主机

    1. 在 nginx 的配置文件 nginx.conf 里面 引入虚拟主机配置文件,以后所有的虚拟主机配置文件都在写这个文件里 include       vhost.conf; (或者新建vhost ...

  6. nginx配置虚拟主机、反向代理和负载均衡

    为了实现这个功能,需要修改nginx的配置文件,将nginx.conf清理一下,使结构更清晰. worker_processes ; events { worker_connections ; } h ...

  7. Nginx配置虚拟主机

    就是在一台服务器启动多个网站. 如何区分不同的网站: 1.域名不同 2.端口不同 在Nginx的安装目录的conf目录下有个配置文件nginx.conf 1.端口区分: 复制server节点,更改端口 ...

  8. Nginx笔记总结五:Nginx配置虚拟主机

    upstream proxy1 { server ; } upstream proxy2 { server ; } server { listen ; server_name www1.dlab.co ...

  9. nginx 配置虚拟主机访问PHP文件 502错误的解决方法

    最近配置Nginx 服务器虚拟主机 访问目录发现报502错误 百度了很多方法 都不管用  我擦 各种抓狂----- 原本Nginx配置如下: 网上找了很多方法: 查看日志   借助nginx的错误日志 ...

随机推荐

  1. curl 使用 post 请求,传递 json 参数,下载文件

    curl -X POST http://ip:8888/nacos/v1/cs/file/download -H "Accept: application/octet-stream" ...

  2. python读写ini配置文件

    像邮箱等信息是可以写在配置文件里面的,python有一个配置模块ConfigParser,可以处理配置文件信息 目录 1.配置模块ConfigParser 2.基本应用 1.配置模块ConfigPar ...

  3. 关于存储过程的一些sql

    1.关于事务的回滚Set XACT_ABORT ON; 开启为on时 ,如果事务语句产生运行错误 ,将整个事务终止进行回滚,Off时只回滚产生错误的语句. 2.获取事务语句中上一次插入值的行号@@ID ...

  4. gradle使用方法

    创建一个项目 你可以通过创建一个build.gradle的文件来开始一个项目,然后可以向文件中加入构建逻辑. $ mkdir basic-demo $ cd basic-demo $ touch bu ...

  5. vuer-cli 安装笔记

    电脑上装 的软件全卸载了.需要 重装 .整理了一下vue-cli脚手架搭建 1 先下载git 2 再下载node 3安装淘宝镜像 (https://npm.taobao.org/) 4 安装webpa ...

  6. 编码总结一:Java默认字符集

    (一)JVM默认字符集——Charset.defaultCharset() 获取Java虚拟机默认字符集,该字符集默认跟操作系统字符集一致,也可以通过-Dfile.encoding="GBK ...

  7. LaTex中集合关系的表示

    集合的大括号: \{ ... \} \(\{ ... \}\) 集合中的"|": \mid \(\mid\) 属于: \in \(\in\) 不属于: \not\in \(\not ...

  8. 【转载】如何编写ROS的第一个程序hello_world

    目录 1.工作空间的创建 2.功能包的创建 3.功能包的源代码编写 4.功能包的编译配置 5.功能包的编译 6.功能包的启动运行 既然ROS已经成功安装好了,大家一定很想亲自动动手编一个通过起手式例程 ...

  9. C#异步:AsyncCallback和IAsyncResult

    在线程池异步的执行委托,异步编程模型 msdn官方解释:https://msdn.microsoft.com/zh-cn/library/ms228972(VS.80).aspx 使用AsyncCal ...

  10. Java数据结构之队列(Queue)

    1.使用场景 银行排队的案例: 2.队列介绍 队列是一个有序列表,可以用数组或是链表来实现. 遵循先入先出的原则: 先存入队列的数据,要先取出. 后存入的要后取出 示意图:(使用数组模拟队列示意图) ...