Nginx专为性能优化而开发,其最大的优点就是它的稳定性和低系统资源消耗,以及对http并发连接的高处理能力,单台物理服务器可支持20000~50000个并发请求,正是如此,大量提供社交网络、新闻资讯、电子商务及虚拟主机等服务的企业纷纷选择Nginx来提供web服务,目前中国大陆使用nginx网站用户有:新浪、网易、腾讯,另外知名的微网志Plurk也使用nginx。
创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站设计、网站制作、上林网络推广、小程序制作、上林网络营销、上林企业策划、上林品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供上林建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com
Nginx是一个很牛的高性能Web和反向代理服务器,它具有有很多非常优越的特性:
高并发连接:官方测试能支撑5万并发连接,在实际生产环境中跑到2,~3W并发连接。
内存消耗少:在3W并发连接下,开启的10个NGINX进程才消耗150M内存(15M*10=150M)
配置文件非常简单:风格跟程序一样通俗易懂。
成本低廉:Nginx作为开源软件,可以免费使用,而购买F5 BIG-IP、NetScaler等硬件负载均衡交换机则需要十多万至几十万人民币。
支持rewrite重写规则:能够根据域名、URL的不同,将HTTP请求分发到不同的后端服务器群组。
内置的健康检查功能:如果Nginx Proxy后端的后台web服务器宕机了,不会影响前端访问。
节省带宽:支持GZIP压缩,可以添加浏览器本地缓存的Header头。
稳定性高:用于反向代理,宕机的概率微乎其微。
有关Nginx理论知识在这就不多说了,下面开始干正事,搭建Nginx网站服务器:
1、centos 7服务器一台;
2、centos 7系统盘一个;
3、需要用到的软件包,这里已经准备好了一个,提取链接:
提取连接
一、开始搭建Nginx网站:
1、挂载系统光盘,初始化yum源
[root@Centos02 ~]# mount /dev/cdrom /mnt/ #挂载系统光盘
[root@centos02 ~]# mkdir /etc/yum.repos.d/bak #创建系统yum备份目录
[root@centos02 ~]# mv /etc/yum.repos.d/CentOS-* /etc/yum.repos.d/bak/
#将系统自带的yum配置文件以Centos-开头的所有文件复制到bak目录中
[root@centos02 ~]# vim /etc/yum.repos.d/local.repo #创建yum配置文件
[local]
name=centos
baseurl=file:///mnt
enabeld=1
gpgcheck=0
2、安装nginx
[root@centos02 ~]# yum -y install pcre pcre-devel zlib-devel #安装依赖程序
[root@centos02 ~]# umount /mnt/ #卸载系统光盘,切换软件包光盘
[root@centos02 ~]# mount /dev/cdrom /mnt/ #挂载软件包光盘
[root@centos02 ~]# tar zxvf /mnt/nginx-1.6.0.tar.gz -C /usr/src/
#将mnt目录中程序解压缩到/src
[root@centos02 ~]# useradd -M -s /sbin/nologin nginx # 创建管理的nginx的用户
[root@centos02 ~]# cd /usr/src/nginx-1.6.0/ #编译安装nginx
[root@centos02 nginx-1.6.0]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
[root@centos02 nginx-1.6.0]# make && make install #编译安装nginx
[root@centos02 nginx-1.6.0]# ln -s /usr/local/nginx/sbin/nginx* /usr/local/sbin/
#优化执行命令
[root@centos02 ~]# echo "www.benet.com" > /usr/local/nginx/html/index.html
#修改新页面覆盖旧页面
[root@centos02 ~]# vim /usr/local/nginx/conf/nginx.conf #设置Nginx最大并发
12 events {
13 worker_connections 4096;
14 }
二、配置nginx虚拟主机
[root@Centos02 ~]# vim /usr/local/nginx/conf/nginx.conf
#nginx配置虚拟主机www.benet.com
35 server { #Server表示虚拟主机
36 listen 80; #虚拟主机监听端口
37 server_name www.benet.com; #虚拟主机域名
38 charset utf-8; #支持字符编码
39 access_log logs/www.benet.com.access.log;
#成功日志位置/usr/local/nginx/logs/
40 error_log logs/www.benet.com.error.log; #错误日志/usr/local/nginx/logs/
41 location / {
42 root /var/www/benetcom/; #网站根目录(默认/usr/local/nginx/html/)
43 index index.html index.htm; #网站主页index.html或者index.htm
44 }
45 }
[root@Centos02 ~]# mkdir -p /var/www/benetcom
#创建www.benet.com虚拟主机网站根目录
[root@Centos02 ~]# echo "www.benet.com" > /var/www/benetcom/index.html
#创建www.benet.com虚拟主机主页
[root@Centos02 ~]# vim /usr/local/nginx/conf/nginx.conf
#配置www.accp.com虚拟主机
47 server { #Server表示虚拟主机
48 listen 80; #虚拟主机监听端口
49 server_name www.accp.com; #虚拟主机域名
50 charset utf-8; #支持字符编码
51 access_log logs/www.accp.com.access.log;
#成功日志位置/usr/local/nginx/logs/
52 error_log logs/www.accp.com.error.log; #错误日志/usr/local/nginx/logs/
53 location / {
54 root /var/www/accpcom/; #网站根目录(默认/usr/local/nginx/html/)
55 index index.html index.htm; #网站主页index.html或者index.htm
56 }
57 }
[root@Centos02 ~]# mkdir -p /var/www/accpcom
#创建www.accp.com虚拟主机网站根目录
[root@Centos02 ~]# echo "www.accp.com" > /var/www/accpcom/index.html
#设置www.accp.com虚拟主机网站主页
三、启动Nginx
[root@centos02 ~]# nginx #启动nginx
[root@centos02 ~]# killall -s QUIT nginx #停止nginx
[root@centos02 ~]# killall -s HUP nginx #重新启动nginx
四、客户端验证Nginx,确保客户端和centos 7服务器网络是互通的,否则白扯,(在这里没有搭建DNS需要手动添加host文件,后续更新LNMP及LAMP再详细配置)
1、添加host文件
2、客户端访问