首页 > 系统相关 >nginx的443端口+虚拟主机

nginx的443端口+虚拟主机

时间:2023-11-18 16:44:58浏览次数:41  
标签:index haodao 虚拟主机 443 server nginx html page

https配置

端口:443

生成证书文件;

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

虚拟主机的配置内容server块

虚拟主机:

(一)虚拟主机概念

虚拟主机指的是一台运行在因特网上的服务器主机分成了多台虚拟的主机,每台虚拟主机是一个独立的站点,虚拟主机可以具有独立的IP,独立的域名,独立的服务端口,具有完整的Intemet服务器功能,如www服务、邮件服务、FTP服务等。而nginx提供了在一台机器上,同时运行多个网站的功能。同一台主机上的虚拟主机之间是完全独立的。从用户来看,每一台虚拟主机和一台独立的主机完全一样。

(二)多虚拟主机应用场景

nginx的多虚拟主机可以基于多IP的形式、基于多域名的形式、多端口的形式。正因为有了nginx的多虚拟主机,我们就可以不用为了运行一个网站服务,而单独配置一个nginx服务器了。大大释放了服务器资源。

(三)基于IP的多虚拟主机实战配置

1、环境准备

(1)如下拓扑所示

             199    ================================  199站点下面内容

       在一台服务器上面实现:         200        ====================                           200站点下面内容

               201        ================                    201站点下面内容

 

1)当用户访问192.168.3.199时,返回的是/haodao_nginx/nginx199站点下的内容;2)当用户访问192.168.3.200时,返回的是/haodao_nginx/python200站点下的内容;3)当用户访问192.168.3.201时,返回的是/haodao_nginx/linux201站点下的内容;

(2)为单网卡虚拟机添加多个IP地址

我这里是在一台虚拟机上进行实验,即一个网卡只有一个IP地址,当前网卡名为:eno16777736,IP地址为192.168.3.199,子网掩码为24位。

通过以下命令为网卡名为eno16777736临时再添加两个地址:

ip addr add 192.168.3.200/24 dev eno16777736

ip addr add 192.168.3.201/24 dev eno16777736

通过ip addr |grep eno*命令查看添加后的地址如下图所示:

IMG_256

 

IMG_257

 

 

(3)根据拓扑信息,建立三个站点目录,通过以下命令进行:

mkdir -p /haodao_nginx/nginx245

mkdir -p /haodao_nginx/python246

mkdir -p /haodao_nginx/linux247

(4)建立基于3个站点的网站内容,通过以下命令进行:

echo "这里是浩道的nginx245站点!!!" > /haodao_nginx/nginx245/index.html

echo "这里是浩道的python246站点!!!" > /haodao_nginx/python246/index.html

echo "这里是浩道的linux247站点!!!" > /haodao_nginx/linux247/index.html

 

2、修改nginx.conf配置文件

(1)在nginx.conf文件中的http块添加多个server{}标签,使得nginx支持基于多IP的虚拟主机,返回多个站点内容:

server {

listen 192.168.3.199:80;

server_name localhost;

charset utf-8;

#access_log logs/host.access.log main;

location / {

root /haodao_nginx/nginx199;

index index.html index.htm;

}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html

#

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

server {

listen 192.168.3.200:80;

server_name localhost;

charset utf-8;

#access_log logs/host.access.log main;

location / {

root /haodao_nginx/python200;

index index.html index.htm;

}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html

#

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

server {

listen 192.168.3.201:80;

server_name localhost;

charset utf-8;

#access_log logs/host.access.log main;

location / {

root /haodao_nginx/linux201;

index index.html index.htm;

}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html

#

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

每一个server{}改动点如图所示:

IMG_258

# another virtual host using mix of IP-, name-, and port-based configuration
#
server {
listen 192.168.8.245:80;
server_name localhost;
charset utf-8;

location / {
root /haodao_nginx/nginx245;
index index.html index.htm;
}
}
server {
listen 192.168.8.246:80;
server_name localhost;
charset utf-8;

location / {
root /haodao_nginx/python246;
index index.html index.htm;
}
}
server {
listen 192.168.8.247:80;
server_name localhost;
charset utf-8;

location / {
root /haodao_nginx/linux247;
index index.html index.htm;
}
}

 

 

 

 

 

 

(2)检查nginx配置文件语法,确认语法无误,命令如下:

nginx -t

(3)重启nginx服务

nginx -s stop

nginx

 

3、验证实验配置结果

通过浏览器访问个站点地址,验证实验结果:

 

IMG_259

 

(1)打开浏览器,地址栏输入192.168.3.199后访问到如下内容,如图所示:

 

(2)打开浏览器,地址栏输入192.168.3.200后访问到如下内容,如图所示:

 

(3)打开浏览器,地址栏输入192.168.3.201后访问到如下内容,如图所示:

IMG_260

 

 

 

根据实际访问结果,验证基于IP的多虚拟主机实验配置成功。

 

六、基于域名的多虚拟主机实战配置(一)虚拟主机概念虚拟主机指的是一台运行在因特网上的服务器主机分成了多台虚拟的主机,每台虚拟主机是一个独立的站点,虚拟主机可以具有独立的IP,独立的域名,独立的服务端口,具有完整的Intemet服务器功能,如www服务、邮件服务、FTP服务等。而nginx提供了在一台机器上,同时运行多个网站的功能。同一台主机上的虚拟主机之间是完全独立的。从用户来看,每一台虚拟主机和一台独立的主机完全一样。(二)多虚拟主机应用场景nginx的多虚拟主机可以基于多IP的形式、基于多域名的形式、多端口的形式。正因为有了nginx的多虚拟主机,我们就可以不用为了运行一个网站服务,而单独配置一个nginx服务器了。大大释放了服务器资源。(三)基于域名的多虚拟主机实战配置

1、环境准备

(1)如下拓扑所示

www.haodaonginx.com      ===============/haodao_nginx/haodaonginx

在一台服务器上面设置多域名:www.haodaopython.com ===============================/haodao_nginx/haodaopython站点下的内容

www.haodaolinux.com =======================/haodao_nginx/haodaolinux

1)当用户访问www.haodaonginx.com时,返回的是/haodao_nginx/haodaonginx站点下的内容;

2)当用户访问www.haodaopython.com时,返回的是/haodao_nginx/haodaopython站点下的内容;

3)当用户访问www.haodaolinux.com时,返回的是/haodao_nginx/haodaolinux站点下的内容;

 

2、配置DNS域名解析,使得访问上述相关域名时,可以正确解析到192.168.3.199的IP

(1)linux环境下进行配置

1)可以使用DNS服务器的方式实现;2)基于/etc/hosts文件进行解析;

以下实验基于/etc/hosts文件进行解析,通过vim /etc/hosts编辑该文件,追加如下信息,具体配置如下:

192.168.3.199 www.haodaonginx.com192.168.3.199 www.haodaopython.com192.168.3.199 www.haodaolinux.com

IMG_256

 

 

(2)windows环境下进行配置这里是为方便在windows中通过浏览器进行访问而做的配置:1)基于C:\Windows\System32\drivers\etc\hosts文件进行解析;

通过修改C:\Windows\System32\drivers\etc\hosts文件,追加如下信息,具体配置如下:

192.168.3.199 www.haodaonginx.com192.168.3.199 www.haodaopython.com192.168.3.199 www.haodaolinux.com

C:\Windows\System32\drivers\etc

IMG_257

 

192.168.8.245 www.haodaonginx.com
192.168.8.245 www.haodaopython.com
192.168.8.245 www.haodaolinux.com

IMG_258

 

 

3、根据拓扑信息,建立三个站点目录,通过以下命令进行:

mkdir -p /haodao_nginx/haodaonginx

mkdir -p /haodao_nginx/haodaopython

mkdir -p /haodao_nginx/haodaolinux

4、建立基于3个站点的网站内容,通过以下命令进行:

echo "这里是浩道的www.haodaonginx.com站点!!!" > /haodao_nginx/haodaonginx/index.html

echo "这里是浩道的www.haodao.python站点!!!" > /haodao_nginx/haodaopython/index.html

echo "这里是浩道的www.haodaolinux站点!!!" > /haodao_nginx/haodaolinux/index.html

 

5、修改nginx.conf配置文件

(1)在nginx.conf文件中的http块添加多个server{}标签,使得nginx支持基于多域名的虚拟主机,返回多个站点内容

server {

listen 80;

server_name www.haodaonginx.com;

charset utf-8;

#access_log logs/host.access.log main;

location / {

root /haodao_nginx/haodaonginx;

index index.html index.htm;

}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html

#

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

server {

listen 80;

server_name www.haodaopython.com;

charset utf-8;

#access_log logs/host.access.log main;

location / {

root /haodao_nginx/haodaopython;

index index.html index.htm;

}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html

#

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

server {

listen 80;

server_name www.haodaolinux.com;

charset utf-8;

#access_log logs/host.access.log main;

location / {

root /haodao_nginx/linux201;

index index.html index.htm;

}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html

#

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

 

将第一个server注释掉,添加如下的server,每一个server{}改动点如图所示:

 

server {
listen 80;
server_name www.haodaonginx.com;
charset utf-8;
#access_log logs/host.access.log main;
location / {
root /haodao_nginx/haodaonginx;
index index.html index.htm; }
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }
}
server {
listen 80;
server_name www.haodaopython.com;
charset utf-8;
#access_log logs/host.access.log main;
location / {
root /haodao_nginx/haodaopython;
index index.html index.htm; }
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }
}
server {
listen 80;
server_name www.haodaolinux.com;
charset utf-8;
#access_log logs/host.access.log main;
location / {
root /haodao_nginx/haodaolinux;
index index.html index.htm; }
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }
}

 

 

 

 

 

(2)检查nginx配置文件语法,确认语法无误,命令如下:

nginx -t

(3)重启nginx服务

nginx -s stop

nginx

 

6、验证实验配置结果

(1)在linux环境下通过浏览器访问个站点地址,验证实验结果:由于我linux服务器没有安装图形桌面,因此没有办法用浏览器访问的方式进行验证,但是可以通过linux命令curl进行验证,如下图所示:

IMG_259

 

 

 

 

 

 

根据实际访问结果,验证基于域名的多虚拟主机实验配置成功。

(2)在windows环境下通过浏览器访问进行验证,这里留给大家自行验证,结果差不多的!

IMG_260

 

 

七、基于端口的多虚拟主机实战配置

(一)虚拟主机概念虚拟主机

指的是一台运行在因特网上的服务器主机分成了多台虚拟的主机,每台虚拟主机是一个独立的站点,虚拟主机可以具有独立的IP,独立的域名,独立的服务端口,具有完整的Intemet服务器功能,如www服务、邮件服务、FTP服务等。而nginx提供了在一台机器上,同时运行多个网站的功能。同一台主机上的虚拟主机之间是完全独立的。从用户来看,每一台虚拟主机和一台独立的主机完全一样。

(二)多虚拟主机应用场景

nginx的多虚拟主机可以基于多IP的形式、基于多域名的形式、多端口的形式。正因为有了nginx的多虚拟主机,我们就可以不用为了运行一个网站服务,而单独配置一个nginx服务器了。大大释放了服务器资源。

(三)基于端口的多虚拟主机实战配置

1、环境准备

(1)如下拓扑所示

80=========================80port

8081=======================8081port

8090=======================8090port

1)当用户访问192.168.3.199:80时,返回的是/haodao_nginx/nginx80port站点下的内容;

2)当用户访问192.168.3.199:8081时,返回的是/haodao_nginx/python8081port站点下的内容;

3)当用户访问192.168.3.199:8090时,返回的是/haodao_nginx/linux8090port站点下的内容;

 

(2)根据拓扑信息,建立三个站点目录,通过以下命令进行:

mkdir -p /haodao_nginx/nginx80port

mkdir -p /haodao_nginx/python8081port

mkdir -p /haodao_nginx/linux8090port

 

(3)建立基于3个站点的网站内容,通过以下命令进行:

echo "这里是浩道的nginx80port站点!!!" > /haodao_nginx/nginx80port/index.html

echo "这里是浩道的python8081port站点!!!" > /haodao_nginx/python8081port/index.html

echo "这里是浩道的linux8090port站点!!!" > /haodao_nginx/linux8090port/index.html

 

2、修改nginx.conf配置文件

(1)在nginx.conf文件中的http块添加多个server{}标签,使得nginx支持基于多端口的虚拟主机,返回多个站点内容

server {

listen 80;

server_name localhost;

charset utf-8;

#access_log logs/host.access.log main;

location / {

root /haodao_nginx/nginx80port;

index index.html index.htm;

}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html

#

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

server {

listen 8081;

server_name localhost;

charset utf-8;

#access_log logs/host.access.log main;

location / {

root /haodao_nginx/python8081port;

index index.html index.htm;

}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html

#

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

server {

listen 8090;

server_name localhost;

charset utf-8;

#access_log logs/host.access.log main;

location / {

root /haodao_nginx/linux8090port;

index index.html index.htm;

}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html

#

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

每一个server{}改动点如图所示:

server {
listen 80;
server_name localhost;
charset utf-8;
#access_log logs/host.access.log main;
location / { root /haodao_nginx/nginx80port; index index.html index.htm; }
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }
}
server {
listen 8081;
server_name localhost;
charset utf-8;
#access_log logs/host.access.log main;
location / { root /haodao_nginx/python8081port; index index.html index.htm; }
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }
}
server {
listen 8090;
server_name localhost;
charset utf-8;
#access_log logs/host.access.log main;
location / { root /haodao_nginx/linux8090port; index index.html index.htm; }
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }
}

 

 

 

 

 

 

(2)检查nginx配置文件语法,确认语法无误,命令如下:

nginx -t

(3)重启nginx服务

nginx -s stop

nginx

3、验证实验配置结果

通过浏览器访问个站点地址,验证实验结果:

 

(1)打开浏览器,地址栏输入192.168.3.199:80后访问到如下内容,如图所示:

 

 

(2)打开浏览器,地址栏输入192.168.3.199:8081后访问到如下内容,如图所示:

 

 

(3)打开浏览器,地址栏输入192.168.3.199:8090后访问到如下内容,如图所示:

IMG_261

 

IMG_262

 

IMG_263

 

 

 

根据实际访问结果,验证基于端口的多虚拟主机实验配置成功。

标签:index,haodao,虚拟主机,443,server,nginx,html,page
From: https://www.cnblogs.com/cherishthepresent/p/17840708.html

相关文章

  • odoo nginx
    Nginx实例完整Nginx.conf示例参考官方文档即可#odooserverupstreamodoo{server127.0.0.1:8069;}upstreamodoochat{server127.0.0.1:8072;}map$http_upgrade$connection_upgrade{defaultupgrade;''close;}#http->httpsserver{......
  • 【小沐学Python】Web服务器搭建(Nginx、IIS)
    1、Web服务器web服务器一词可以代指硬件或软件,或者是它们协同工作的整体。6、NginxNginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器,同时也是一个IMAP、POP3、SMTP代理服务器,多用于高连接并发。6.1简介https://nginx.org/en/Nginx是lgorSysoev为俄罗斯......
  • nginx预压缩静态文件
    http请求压缩可减少宽带,提升终端加载速度。像http服务自带的压缩是实时的,虽然可通过缓存减少重复请求压缩次数,实际还是不能有效减少重复压缩相同请求,特别是较大的静态文件。http压缩协议HTTP协议中的数据压缩-HTTP|MDN(mozilla.org)浏览器会在每个请求中携带Accept-Encoding......
  • docker 部署nginx
     docker部署Nginx一、先启动一次,把配置文件copy出来 #创建并运行容器,容器命名为nginx dockerrun--namenginx-p80:80-dnginx#创建目录存放mkdir /usr/local/docker-nginx#从容器中copy配置 dockercpnginx:/etc/nginx/nginx.conf/usr/local/docker-nginx......
  • nginx keepalive 设置避免 服务器端大量time_wait 增加tcp 连接重用
    #Formoreinformationonconfiguration,see:#*OfficialEnglishDocumentation:http://nginx.org/en/docs/#*OfficialRussianDocumentation:http://nginx.org/ru/docs/usernginx;worker_processesauto;error_log/var/log/nginx/error.log;pid/run/......
  • php nginx 出现504 Gateway Timeout
    先试试:ini_set('memory_limit','4096M');set_time_limit(0);情况一:由于nginx默认的fastcgi进程响应缓冲区太小造成这种情况下导致fastcgi进程被挂起,如果fastcgi服务队这个挂起处理不是很好的话,就可能提示“504GatewayTime-out”错误。情况一解决办法:默认的fastcgi进程响......
  • 默认nginx.conf
     usernginx;worker_processesauto;error_log/var/log/nginx/error.lognotice;pid/var/run/nginx.pid;events{worker_connections1024;}http{include/etc/nginx/mime.types;default_typeapplication/octet-stream;log_formatmain'$remote_a......
  • 内网走nginx代理访问高德webapi2.0
    需求:客户的电脑都只能访问内,服务器可以访问外网,客户电脑使用的项目中用到了高德webapi2.0。10.200.31.45:32100是我们的web服务器。网上基本上都是对高德webapi1.4的配置方式,而web2.0有一些差别。1.前端修改高德地图的js应用如果是index.html引入,修改之前的应用:<script......
  • 阿贝云,免费虚拟主机,免费云服务器
    在做科研学习项目,学生党又没啥钱,租一个服务器又太贵了,就看看免费云服务器,刚好看到很多人在推荐阿贝云,就抱着尝试的心态试试,需要实名认证0.3毛,我就充了1元,本来想安装虚拟机,然后我就想安装windows的系统,我太天真了,免费云服务的配置还是别搞跑3台机子的事,然后还是安装了ubuntu16.04,......
  • Ubuntu 22.04 LTS 安装最新稳定版本nginx、mysql5.7和php7.2
    Ubuntu22.04LTS安装最新稳定版本nginx、mysql5.7和php7.2全部apt-get安装,就是快,迅速。前提是需要在有网络环境的情况下哈!!操作系统版本:Ubuntu22.04LTS一、安装最新稳定版本的nginxapt-getupdate#查看默认安装的nginx版本(默认为1.18。有点老,我们安装最新稳定版本)apt......