菜单

注册免费送38元体验金The server of Nginx(一)——Nginx基础与静态网站的构建

2018年11月18日 - 注册免费送38元体验金

一、Nginx介绍

  火了半边天之Nginx和Apache一样吗是Web服务器,专为性优化而支出,也足以像Squid一样做反而为代理,或者邮件代理等众用场,并出windows的移植版,其无与伦比知名的助益是它们的泰和没有系统资源消耗,以及针对HTTP并发连接的赛处理能力,单台物理服务器可支持30000~50000个冒出请求,apache理论及一味支持3000~5000个冒出请求,但是apache对动态网站的支持而比Nginx好。正因为这样,大量提供社交网站,新闻资讯,电子商务及虚拟主机等劳务之店家纷纷选择Nginx来提供Web服务。

二、Nginx VS Apache

Nginx优点
  (1)轻量级,同样一致劫持web服务,比apache占用更少之内存和资源
  (2)高并发,nginx处理要是异步非阻塞的,而apache则是死型的,在赛并发下nginx能维持低位资源低消耗大性能
  (3)高低模块化的规划,编写模块相对简便易行
  (4)可当负载均衡服务器,支持7层负载均衡
  (5)静态处理性能比Apache高3加倍以上,但动态处理不足,需要经后端服务器支持,如Apache

三、Nginx的安装

 1 #1、安装依赖包 pcre-devel (为了支持网页重写机制)和 zlib-devel(一般系统自带)和 pcre(一般系统自带)和 openssl-devel 和 openssl(一般自带)
 2 yum -y install pcre-devel openssl-devel 
 3 #2、创建运行用户和组
 4 useradd -M -s /sbin/nologin nginx
 5 #3、安装 wget -q http://nginx.org/download/nginx-1.6.0.tar.gz
 6 tar zxvf nginx-1.6.0.tar.gz -C /usr/src
 7 cd /usr/src/nginx-1.6.0/
 8 ./configure --prefix=/application/nginx-1.6.0 \
 9 --user=nginx --group=nginx \
10 --with-http_stub_status_module (加模块:网页访问的状态记录服务器也就是日志统计模块)--with-http_ssl_module
11 make && make install
12 #4、创建链接文件
13 ln -s /application/nginx-1.6.0/sbin/nginx  /usr/local/sbin/
14 ln -s /applicationnginx-1.6.0 /application/nginx

 四、Nginx运行控制措施

~]#nginx -t     #检测配置文件语法
~]#nginx      #启动nginx,可以使用elinks ,curl 127.0.0.1,wget 127.0.0.1检查实际开启效果

再次加载nginx

~]#netstat -anpt | grep nginx
xxx
~]#kill -s HUP  xxx  或 kill   -1 xxx 或 killall -s HUP nginx

关闭nginx

~]#kill -s QUIT  xxx  或  kill -3 xxx 或 killall -s QUIT nginx

分日志

~]#kill -s USER1 xxx

平升级nginx服务

~]#kill -s USER2 xxx

下提供相同段落名吧nginx的劳务控制脚本:

 1 #chkconfig: 2345 21 90
 2 #description: nginx server control script
 3 PROG="/usr/local/sbin/nginx"  
 4 PIDF="usr/local/nginx/logs/nginx.pid"     # 注意:当nginx安装完毕后并没有生成pid文件,需要在配置文档中开启pid功能,才能出现,这个文件里包含了一个pid进程数字
 5 case "$1" in
 6         start)
 7         $PROG
 8         ;;
 9         stop)
10         kill -3 $(cat $PIDF)
11         ;;
12         restart)
13         $0 stop   #$0代表本文件,这个文件加上可执行权限后,便可这么用
14         $0 start
15         ;;
16         reload)
17         kill -1 $(cat $PIDF)
18         ;;
19         *)
20         echo "Usage: $0 (start|stop|restart|reload)"
21         exit 1
22 esac
23 exit 0

下一场设置权限添加为系统服务

~]#chmod +x nginx
~]#chkconfig --add nginx

 五、Nginx配置文件分析

  /usr/local/nginx/conf/nginx.conf文件包含全局配置、I/O事件配置以及HTTP配置这三颇块内容,前10行是大局配置,12-14行是I/O事件配置,余下的啊HTTP配置;配置语句的格式为
“关键字 值;” 

(1)全局配置

  由各种配置语句组成,不适用特定的范围标记、可安装Nginx服务之运转用户、工作过程数、错误日志、PID存放位置等,如果安排起注释掉,表示用默认设置

  具体配置:

user  nginx  nginx;  #运行用户改为我们之前建立的nginx用户及其组
worker_processes 1   #工作进程数量为1,若服务器有多块CPU或者使用多核处理器,可参考CPU核心总数来制定工作进程数,比如两块2核的就写4,或者是2倍,8。

  以下三起我们并看:

  对于Nginx来说,错误日志分为6级,从根本由小及大分为debug\info\notice\warn\error\crit;如果下三只选择我被
info的话,意味着\info\notice\warn\error\crit这几乎单级别要举行记录,如果写成notice
,那么notice\warn\error\crit要开记录,如果是warn,那么warn\error\crit要举行记录依次类推,一般我们开info那一宗。

#error_log  logs/error.log
#error_log  logs/error.log   notice;
#error_log  logs/error.log   info;

(2)I/O事件配置

  用“events{}” 界定,指定Nginx进程I/O响应型、每个过程的连接数等

实际安排:

events  {
      use epoll;                   #2.6及以上版本的内核(查询方法uname -r),建议使用epoll模型以提高性能;它的工作模式有很多种,如果不写的话这里默认是select/poll工作模式;kequeue/epoll是高效功能模式,2.6以上的版本可以用这种模式;kequeue模式用在BSD系统中(一种开源的UNIX)。
  worker_connections     1024;        #每个进程的连接数应根据实际需要来定,一般在10000以下,默认为1024,意思是1个进程可以同时有1024个人访问进来,Nginx很强悍的,之前我们提到它可以同时响应30000到50000之间的数,所以根据需要改大。
}

横流:小知识,最酷并发用户数算法 
worker_processes的值就以worker_connections的价,当然具体多少还要扣服务器硬件、网络带来富顶物理条件的属性表现

(3)HTTP配置

  用”http
{}”界定,这单看日志、HTTP端口、网页目录、默认字符集、连接保持,虚拟Web主机、PHP解析等,server{}配置段设置一定的网站(说白了就算是布局虚拟主机)。

切实配置:

 1 include   mine.types                   #表示支持多媒体
 2 log_format  main                       #紧随其后有三行,意思都是定义日志格式的,这个格式的名字叫main
 3 access_log  logs/access.log   main;    #一般启用这个访问日志路径,它的格式就是上面我们提到的名为main的格式
 4 sendfile        on           #是否支持文件发送(下载)
 5 keepalive_timeout        65      #连接保持超时(访问页面后,如果不做任何操作65秒后将断开连接)
 6 listen  80                   #监听地址及端口
 7 server_name   www.benet.com        #设置网络名称(FQDN)
 8 charset     utf-8   ;           #网站默认字符集,默认是俄语,我们改为utf-8

 9 location /  {                  #根目录配置
10      root  html ;                 #网站根目录的位置,这是个相对路径,其实是/usr/local/nginx/html/
11      index  index.html  index.htm;  #默认首页
12       }

13 error_page  404 /404.html;            #404报错页是由404.html来调用启动的
14 error_page   500  502  503   504   /50x.html;    #这些报错页都是由50x.html来调用启动的

 六、构建静态网站

步骤:(和apahe验证是同一的http://www.cnblogs.com/mangood/p/5947110.html)

  1、修改主配置文件、新建www.benet.com网站

  2、准备网站目录和测试网页

  3、配置本地解析或DNS解析

  4、启动并检测服务是否正规

七、查看统计日志

 
(1)Nginx内置了HTTP_STUB_STATUS状态统计模块,修改nginx.conf配置文件,指定访问位置/status并开拓stub_status配置

1 ~]#vim /usr/local/nginx/conf/nginx.conf
2 添加
3 location ~ /status  {
4       stub_status  on;   #由stub_status来统计日志
5       access_log   off;   #关闭系统自身的日志功能
6     }
7 ~]#service nginx reload

 (2)在浏览器被做客/status,看到统计信息

  输入地点http://www.benet.com/status

注册免费送38元体验金 1

相关文章

标签:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图