nginx静态网页的搭建
user www;#nginx核心功能快http {#在http{}标签里面就可以一定虚拟主机,nginx.conf中server{}虚拟主机标签的定义,默认加载顺序是自上而下的匹配规则,如果没有其他规则定义的情况下#第一个虚拟主机站点server{#定义虚拟主机站点的端口号listen 80;#填写虚拟主机的域名配置,没有域名默认为localhost也可以写_server_name localhost;#server_name www.chuan.cc;#给nginx定义网站的编码charset utf-8#如下规则是最低级匹配,任何nginx请求都会进入location的配置,去他定义的目录中寻找资料location / {#root关键字是定义网页根目录的,这个html是以nginx安装路径为相对root html;#index关键字,定义nginx的首页文件名字,默认寻找哪个文件index index.html index.htm}}#在平级关系内,我们编写n个sever{}就是代表多个虚拟主机server{}}
修改nginx虚拟主机站点目录
也就是修改location{}配置中的关键词和起网页根目录
root /www/html; #就会默认进如这个目录下寻找首页文件
静态资源压缩
nginx支持gzip对资源压缩传输,经过gzip压缩后的页面大小可以为原本的30%甚至更小,浏览体验会快很多
- 配置一个文件较大的首页文件
- 开启nginx的gzip压缩功能,只需要在http{}配置中,打开如下参数
gzip on;
gzip_http_version 1.1;
gzip_comp_level 4;
gzip_types text/plain application/javascript appli…..
这个时候我们再进行首页刷新查看,可以发现速度会较之前快很多,且利用开发者工具查看,会发现大小和我们原文件的大小缩小了许多
基于IP的多虚拟主机
测试准备
添加网络设备别名,绑定多个ip地址,除了增添别名和修改ip,其他抄回原ip信息
ifconfig ens33:1 192.168.47.140 netmask 255.255.255.0 broadcast 192.168.47.2 up ifconfig ens33:2 192.168.47.142 netmask 255.255.255.0 broadcast 192.168.47.2 up
给nginx添加inlucde包含语法,让其他目录下的配置文件参数,导入到nginx.conf中,这样的写法能够让nginx每一个配置文件,更简洁清晰
修改nginx.conf,在http{}标签中最后一行,添加如下参数,extra和nginx.conf的文件夹为相对,也可以填写绝对路径
include extra/*.conf;
在extra目录下,添加多个基于ip的虚拟主机配置
vim extra/140.conf
server { listen 192.168.47.140:80; severname ; location / { root /www/140; index index.html; } }
检查nginx语法是否正确
nginx -t
重新加载nginx配置
nginx -s reload
准备对应ip文件目录下的首页目录文件,然后进行对应ip的查看,配置没有问题,我们能够看到每个ip显示了对应的首页文件,即相当于建立了三个虚拟主机网站
基于域名的多虚拟主机
基于多IP的虚拟主机,常用的并不多,还可能造成IP不足等问题,一般如果没有特殊需求,用的更多,且更方便的基于多域名的虚拟主机
前提使用条件,要么配置DNS服务器,将你想用的域名解析到对应的ip
使用本地的hosts文件,进行本地测试访问
多域名的配置结合nginx,就是多虚拟主机的访问,解决了可能ip不足的问题环境准备
macos(苹果端) /etc/hosts 文件里面更改 windows c盘里面的hosts文件,搜索引擎搜一下就可以搜索到
修改hosts文件,添加如下信息
192.168.47.130 learn_nginx.com
192.168.47.130 learn_nginx_cc.com
192.168.47.130 learn_nginx_yy.com修改服务端的nginx配置
server { listen 80; sever_name learn_nginx.com; #设置多个server主机配置,更改其对应域名 location / { root /www/learn_nginx; index index.html; } }
基于端口的多虚拟主机
只需要修改sever{}配置当中的 listen端口 参数即可,实现不同的端口,进行虚拟主机匹配
192.168.47.30:80
192.168.47.30:85
192.168.47.30:90
