千家信息网

nginx怎么实现在一个服务器可以访问多个网站

发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,本篇内容介绍了"nginx怎么实现在一个服务器可以访问多个网站"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学
千家信息网最后更新 2025年02月05日nginx怎么实现在一个服务器可以访问多个网站

本篇内容介绍了"nginx怎么实现在一个服务器可以访问多个网站"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

在一台服务器上,访问不同的网站

通常有两种区分方式:

1.通过监听的端口号

2.通过域名

1.通过端口访问不同的主机:

nginx的配置文件:

/usr/local/nginx/conf/nginx.conf

centos文件默认编码格式 latin1

查看编码格式的命令: :set fileencoding

#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节点http {    include    mime.types;  default_type application/octet-stream;  #log_format main '$remote_addr - $remote_user [$time_local] "$request" '  #         '$status $body_bytes_sent "$http_referer" '  #         '"$http_user_agent" "$http_x_forwarded_for"';  #access_log logs/access.log main;  sendfile    on;  #tcp_nopush   on;  #keepalive_timeout 0;  keepalive_timeout 65;  #gzip on; #server 节点,即 你需要访问网站的配置 #一个server节点,就是一个虚拟主机  server {    listen    80;  #监听的端口号,访问网站 默认是80端口    server_name localhost;  #即访问的域名    #charset koi8-r;    #access_log logs/host.access.log main;    location / {  #定位      root  html;  #定位的是nginx根目录下的 html文件夹      index index.html index.htm;  #设置网站首页    }  }}

此时 可以配置多个server,也就是配置了不同的主机

添加虚拟主机:(通过端口号 区别)

server {    listen    81;    server_name localhost;    #charset koi8-r;    #access_log logs/host.access.log main;    location / {      root  html-81;  #nginx根目录下 新建的html81 文件夹      index index.html index.htm;    ``  }

编辑好文件之后,我们重新加载配置文件

通过命令: ./nginx -s reload

效果:

我们知道,当一个服务器上配置多个网站时,我们不可能通过端口号来区分它们,所以接下来 我需要通过域名来区分

2.通过域名区分不同的虚拟主机

什么是域名??

域名就是网址

例如:www.baidu.com

通常我们在访问域名的时候,我们需要通过dns服务器解析域名

dns服务器:把域名解析为ip地址。保存的就是域名和ip的映射关系。

一个域名对应一个ip地址,一个ip地址可以被多个域名绑定。

本地测试可以修改hosts文件。

修改window的hosts文件:(c:\windows\system32\drivers\etc)

可以配置域名和ip的映射关系,如果hosts文件中配置了域名和ip的对应关系,不需要走dns服务器!!!!

在刚刚的nginx.conf文件下 继续配置:

server {    listen    80;    server_name www.taobao.com;    #charset koi8-r;    #access_log logs/host.access.log main;    location / {      root  html-taobao;      index index.html index.htm;    }  }  server {    listen    80;    server_name www.baidu.com;    #charset koi8-r;    #access_log logs/host.access.log main;    location / {      root  html-baidu;      index index.html index.htm;    }  }}

域名的配置:

192.168.25.148 www.test.com
192.168.25.148 www.yiyou.com

重启nginx服务

观察下效果:

"nginx怎么实现在一个服务器可以访问多个网站"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0