Nginx虽然小,但是对开发来说开发起来并不简单,是通过epoll模型实现的异步Web
Nginx特点:方便,简单灵活,占用系统资源少,对静态小文件处理好的Web服务软件
Nginx特性:
1.支持高并发(能支持几万台并发连接,特别是静态小文件业务环境)
2.资源消耗少(在3万台并发连接下,开启10个Nginx线程消耗的内存不到200MB)
编译安装(除了安装包名称,剩下的得背)
1.先安装支持包
yum -y install pcre-devel openssl-devel
2.解压编译包到/usr/src
tar xf 安装包 -C /usr/src
3.创建程序用户
useradd -s /sbin/nologin -M www
4.进行编译安装
cd /usr/src/nginx
./configure --user=用户名 --group=组 --prefix=指定目录(如:/usr/local/nginx) --with-http_stub_status_module --with-http_ssl_module && make && make install
修改环境变量(做软连接)
ln -s /usr/local/nginx/sbin/* /usr/local/bin/
Nginx
用绝对路径可以启动服务脚本
2.在用nginx时系统防火墙要关闭
3 curl这个命令是模拟访问的
4用户在访问网站时不能看到根上边的网页文件
windows也是在访问linux中的网页时需要修改映射文件,windows映射文件(C
盘/windows/system32/drives/etc/hosts)
搭建网页过程
一个web服务器搭建多个网站有三种方法:
1.基于不同域名的虚拟网站(工作中常用)
2.基于不同监听端口的虚拟网站(可以实现用IP去访问多个域名)
3.基于不同IP的虚拟网站
1.先到配置文件中修改
2.重新启动服务
/usr/local/nginx/sbin/nginx -s reload 平滑重启,不影响正在连接的用户
3.根据配置文件中的模块去创建网页文件,并且添加网页内容
4.增加映射文件内容
5.用curl去检测
curl www.yunjisuan.com
问题
如果一个IP去搭建多个网站,那么用域名去访问就能访问得到他想要的网页文件,而用IP去访问得到的是
配置文件中的第一个的模块网页文件(优先级是从上往下)
如果一个IP多个域名,客户机用域名去访问,服务机就能拿到它想要的,那么服务端是怎么知道客户端
的想要去访问的哪个域名呢?
web服务器可以在用户发送过来的报文中的头部可以查看用户想看的具体域名
curl -v yunjisuan.com 查看报文内容