文章介绍
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。本文跟大家分享nginx的三种配置方法
详情介绍
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器 ,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、简单的配置文件和低系统资源的消耗而闻名。
nginx一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好
服务器:
Nginx作为负载均衡服务:Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,也可以支持作为 HTTP代理服务对外进行服务。Nginx采用C进行编写,不论是系统资源开销还是CPU使用效率都比 Perlbal 要好很多。
处理静态文件,索引文件以及自动索引;打开文件描述符缓冲。
无缓存的反向代理加速,简单的负载均衡和容错。
FastCGI,简单的负载均衡和容错。
模块化的结构。包括 gzipping, byte ranges, chunked responses,以及 SSI-filter 等 filter。如果由 FastCG或其它代理服务器处理单页中存在的多个 SSI,则这项处理可以并行运行,而不需要相互等待。
支持 SSL 和 TLSSNI。
代码:
Nginx代码完全用C语言从头写成,已经移植到许多体系结构和操作系统,包括:Linux、FreeBSD、Solaris、Mac OS X、AIX以及Microsoft Windows。Nginx有自己的函数库,并且除了zlib、PCRE和OpenSSL之外,标准模块只使用系统C库函数。而且,如果不需要或者考虑到潜在的授权冲突,可以不使用这些第三方库。
代理服务器:
作为邮件代理服务:Nginx 同时也是一个非常优秀的邮件代理服务(最早开发这个产品的目的之一也是作为邮件代理服务器),last.fm 描述了成功并且美妙的使用经验。
Nginx 是一个安装非常的简单、配置文件非常简洁(还能够支持perl语法)、Bug非常少的服务。Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的升级。
实验配置
推荐步骤:
- 安装 Nginx 配置基于 IP 地址虚拟主机客户端访问验证,第一个虚拟主机监听 IP 地址192.168.100.20,第二个虚拟主机监听 IP 地址 192.168.100.30
- 配置基于端口虚拟主机, 192.168.100.10:8080 监 听 第 一 个 虚 拟 主 机 ,192.168.100.10:8181 监听第二个虚拟主机,客户端访问验证
- 配置基于域名虚拟主机,www.bdqn.com 监听默认虚拟主机,www.benet.com 监听第一个虚拟主机,www.accp.com 监听第二个虚拟主机
实验步骤:
一,安装Nginx配置基于IP地址虚拟主机客户端访问验证,第一个虚拟主机监听IP地址192.168.100.20,第二个虚拟主 机监听IP地址192.168.100.30
1,安装nginx依赖程序
1)挂载系统盘
[root@centos ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@centos ~]# ls /mnt/
CentOS_BuildTag GPL LiveOS RPM-GPG-KEY-CentOS-7
EFI images Packages RPM-GPG-KEY-CentOS-Testing-7
EULA isolinux repodata TRANS.TBL
2)配置本地yum源
[root@centos ~]# rm -rf /etc/yum.repos.d/CentOS-*
[root@centos ~]# ls /etc/yum.repos.d/
local.repo
[root@centos ~]# cat /etc/yum.repos.d/local.repo
[local]
name=centos7
baseurl=file:///mnt
enabled=1
gpgcheck=0
3)安装nginx依赖程序
[root@centos ~]# yum -y install pcre-devel zlib-devel
2,安装nginx网站服务器
1)切换nginx源代码光盘
[root@centos ~]# umount /mnt/ //卸载当前挂载光盘
[root@centos ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
2)解压缩源代码程序
[root@centos ~]# tar zxf /mnt/nginx-1.6.0.tar.gz -C /usr/src/
3)配置nginx服务器端
[root@centos ~]# cd /usr/src/nginx-1.6.0/
[root@centos nginx-1.6.0]# ./configure \
--prefix=/usr/local/nginx \ //nginx安装目录
--user=nginx \ //管理nginx用户
--group=nginx \ //管理nginx组
--with-http_stub_status_module //配置监控
4)编译安装
[root@centos nginx-1.6.0]# make && make install
3,优化nginx命令和服务控制
1)优化服务命令
[root@centos ~]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/
2)创建管理nginx用户
[root@centos ~]# useradd -M -s /sbin/nologin nginx
3)检查服务配置文件是否出错
4)启动服务查看服务运行状态
[root@centos ~]# nginx
5)停止服务
[root@centos ~]# killall nginx
[root@centos ~]# killall nginx
nginx: no process found
4,配置虚拟主机网站目录
1)创建虚拟主机网站根目录
[root@centos ~]# mkdir -p /www/daosui
[root@centos ~]# mkdir -p /www/suifeng
2)设置网站主页
[root@centos ~]# echo "www.suifeng.com" > /www/suifeng/index.html
[root@centos ~]# echo "www.daosui.com" > /www/daosui/index.html
3)查看网站根目录数据
5,虚拟生成虚拟主机网卡配置文件
1)生成网卡配置文件
[root@centos ~]# cd /etc/sysconfig/network-scripts/
[root@centos network-scripts]# cp ifcfg-ens32 ifcfg-ens32:1
[root@centos network-scripts]# cp ifcfg-ens32 ifcfg-ens32:2
2)修改第一块网卡配置文件
[root@centos network-scripts]# vim ifcfg-ens32:1
TYPE=Ethernet
BOOTPROTO=static
NAME=ens32:1
DEVICE=ens32:1
ONBOOT=yes
IPADDR=192.168.100.20
NETMACK=255.255.255.0
3)修改第二块网卡文件
[root@centos network-scripts]# vim ifcfg-ens32:2
TYPE=Ethernet
BOOTPROTO=static
NAME=ens32:2
DEVICE=ens32:2
ONBOOT=yes
IPADDR=192.168.100.30
NETMACK=255.255.255.0
4)重启网卡查看IP地址
[root@centos ~]# systemctl restart network
6,修改Nginx主配置文件支持基于IP地址虚拟主机
1)修改主配置文件
[root@centos ~]# vim /usr/local/nginx/conf/nginx.conf
2)检查简称主配置文件
3)启动nginx服务查看服务运行状态
[root@centos ~]# nginx
4)客户端访问http://192.168.100.20daosui站点
6)客户端访问http://192.168.100.30suifeng站点
二、配置基于端口虚拟主机,192.168.100.10:8080监听第一个虚拟主机,192.168.100.10:8181 监听第二个虚拟主机,客户端访问验证
1,配置Nginx主配置文件支持基于端口虚拟主机
1)修改主配置文件
[root@centos ~]# vim /usr/local/nginx/conf/nginx.conf
2)检查主配置文件
3)重启nginx服务
[root@centos ~]# killall nginx
[root@centos ~]# killall nginx
nginx: no process found
[root@centos ~]# nginx
2,客户端访问网站服务器进行验证
1)客户端使用IP地址http://192.168.100.10:8080访问daosui站点
2)客户端使用IP地址http://192.168.100.10:8181访问验证suifeng站点
三,配置基于域名虚拟主机,www.daosui.com监听第一个虚拟主机,www.suifeng.com监听第二个虚拟主机
1,网站服务器和DNS服务器配置IP地址和DNS服务器
1)网站服务器配置IP地址
[root@centos ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
TYPE=Ethernet
BOOTPROTO=static
NAME=ens32
DEVICE=ens32
ONBOOT=yes
IPADDR=192.168.100.10
NETMACK=255.255.255.0
DNS1=192.168.100.40
[root@centos ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32:1
TYPE=Ethernet
BOOTPROTO=static
NAME=ens32:1
DEVICE=ens32:1
ONBOOT=yes
IPADDR=192.168.100.20
NETMACK=255.255.255.0
DNS1=192.168.100.40
[root@centos ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32:2
TYPE=Ethernet
BOOTPROTO=static
NAME=ens32:2
DEVICE=ens32:2
ONBOOT=yes
IPADDR=192.168.100.30
NETMACK=255.255.255.0
DNS1=192.168.100.40
2)DNS服务器配置IP地址
[root@centos02 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
TYPE=Ethernet
BOOTPROTO=static
NAME=ens32
DEVICE=ens32
ONBOOT=yes
IPADDR=192.168.100.40
NETMACK=255.255.255.0
DNS1=192.168.100.40
2,安装DNS服务器
1)挂载系统盘
[root@centos02 ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@centos02 ~]# ls /mnt/
CentOS_BuildTag GPL LiveOS RPM-GPG-KEY-CentOS-7
EFI images Packages RPM-GPG-KEY-CentOS-Testing-7
EULA isolinux repodata TRANS.TBL
2)安装DNS服务器
3)修改DNS服务器主配置文件
[root@centos02 ~]# vim /etc/named.conf
4)检查文件是否出错
[root@centos02 ~]# named-checkconf /etc/named.conf
5)配置DNS区域配置文件
[root@centos02 ~]# vim /var/named/daosui.com.zone
[root@centos02 ~]# vim /var/named/suifeng.com.zone
3,修改Nginx主配置文件支持域名虚拟主机
1)修改Nginx主配置文件
[root@centos ~]# vim /usr/local/nginx/conf/nginx.conf
2)检查主配置文件
3)重启服务
[root@centos ~]# killall nginx
[root@centos ~]# killall nginx
nginx: no process found
[root@centos ~]# nginx
4)查看服务运行状态
4,客户端配置
1)客户端配置IP地址和DNS
2)客户端使用域名www.daosui.com访问daosui站点
3)客户端使用域名www.suifeng.com访问suifeng站点
“博主正在努力学习阶段如有不对请指出,虚心接受指导,感谢!!!”
标签:centos,虚拟主机,nginx,配置,192.168,Nginx,root From: https://blog.51cto.com/u_15739582/6052130