Nginx指南和配置详解

Nginx指南

Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名了。更多的请见官方wiki: http://wiki.nginx.org/Main 。


其优点:


Nginx做为HTTP服务器,有以下几项基本特性:


处理静态文件,索引文件以及自动索引;打开文件描述符缓冲.
无缓存的反向代理加速,简单的负载均衡和容错.


一、依赖的程序


gzip module requires zlib library
rewrite module requires pcre library
ssl support requires openssl library

二、安装

$./configure
$make
$make install

默认安装的路径是/usr/local/nginx 
更多的安装配置

$./configure --prefix=/usr/local/nginx--with-openssl=/usr/include (启用ssl)--with-pcre=/usr/include/pcre/ (启用正规表达式)--with-http_stub_status_module (安装可以查看nginx状态的程序)--with-http_memcached_module (启用memcache缓存)--with-http_rewrite_module (启用支持url重写)

三、nginx命令

-?,-h         : this help-v            : show version and exit-V            : show version and configure options then exit-t            : test configuration and exit-q            : suppress non-error messages during configuration testing-s signal     : send signal to a master process: stop, quit, reopen, reload-p prefix     : set prefix path (default: /usr/local/nginx/)-c filename   : set configuration file (default: conf/nginx.conf)-g directives : set global directives out of configuration file

启动:nginx重启:nginx -s reload退出:nginx -s quit测试配置文件:nginx -t


Nginx配置详解

在进行Nginx配置的时候会出现很多不明白的地方,其实有些时候只要换一个思维的方式就能找多你要解决问题的方法。官方配置样例:http://wiki.nginx.org/NginxFullExample

#运行用户   user nobody nobody;   #启动进程   worker_processes 4;   #全局错误日志及PID文档  [ debug | info | notice | warn | error | crit ] error_log logs/error.log notice;   pid logs/Nginx.pid;   #工作模式及连接数上限   events { #工作模式有:# use [ kqueue | rtsig | epoll | /dev/poll | select | poll ] ;  use epoll;   worker_connections 1024;   }   #设定http服务器,利用他的反向代理功能提供负载均衡支持   http {   #设定mime类型   include conf/mime.types;   default_type application/octet-stream;   #设定日志格式   log_format main '$remote_addr - $remote_user [$time_local] '   '"$request" $status $bytes_sent '   '"$http_referer" "$http_user_agent" '   '"$gzip_ratio"';   log_format download '$remote_addr - $remote_user [$time_local] '   '"$request" $status $bytes_sent '   '"$http_referer" "$http_user_agent" '   '"$http_range" "$sent_http_content_range"';   #设定请求缓冲   client_header_buffer_size 1k;   large_client_header_buffers 4 4k;   #开启gzip模块   gzip on;   gzip_min_length 1100;   gzip_buffers 4 8k;   gzip_types text/plain;   output_buffers 1 32k;   postpone_output 1460;   #设定access log   access_log logs/access.log main;   client_header_timeout 3m;   client_body_timeout 3m;   send_timeout 3m;   sendfile on;   #指令激活或停用的sendfile()的用法。tcp_nopush on;   tcp_nodelay on;   keepalive_timeout 65;   #设定负载均衡的服务器列表   upstream mysvr {   #weigth参数表示权值,权值越高被分配到的几率越大   #本机上的Squid开启3128端口   server 192.168.8.1:3128 weight=5;   server 192.168.8.2:80 weight=1;   server 192.168.8.3:80 weight=6;   }   #设定虚拟主机   server {   listen 80;   server_name 192.168.8.1  www.yejr.com;   charset utf8;   #设定本虚拟主机的访问日志   access_log logs/www.yejr.com.access.log main;   #假如访问 /img/*, /js/*, /css/* 资源,则直接取本地文档,不通过squid   #假如这些文档较多,不推荐这种方式,因为通过squid的缓存效果更好   location ~ ^/(img|js|css)/ {   root /data3/Html;   expires 24h;   }   #对 "/" 启用负载均衡   location / {   proxy_pass http://mysvr;   proxy_redirect off;   proxy_set_header Host $host;   proxy_set_header X-Real-IP $remote_addr;   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;   client_max_body_size 10m;   client_body_buffer_size 128k;   proxy_connect_timeout 90;   proxy_send_timeout 90;   proxy_read_timeout 90;   proxy_buffer_size 4k;   proxy_buffers 4 32k;   proxy_busy_buffers_size 64k;   proxy_temp_file_write_size 64k;   }   #设定查看Nginx状态的地址   location /NginxStatus {   stub_status on;   access_log on;   auth_basic "NginxStatus";   auth_basic_user_file conf/htpasswd;   }   # error_page 404 /404.html;  # location /404.html {  # root /spool/www;  # charset on;  # source_charset koi8-r;  # }  # location /old_stuff/ {  # rewrite ^/old_stuff/(.*)$ /new_stuff/$1 permanent;  # }  #location /download/ {  # valid_referers none blocked server_names *.example.com;  # if ($invalid_referer) {  # #rewrite ^/ http://www.example.com/;  # return 403;  # }  # rewrite_log on;  # # rewrite /download/*/mp3/*.any_ext to /download/*/mp3/*.mp3  # rewrite ^/(download/.*)/mp3/(.*)\..*$ /$1/mp3/$2.mp3 break;  # root /spool/www;  # # autoindex on;  # access_log /var/log/nginx-download.access_log download;  # }  # location ~* ^.+\.(jpg|jpeg|gif)$ {  # root /spool/www;  # access_log off;  # expires 30d;  #}}   
}

备注:conf/htpasswd 文档的内容用 apache 提供的 htpasswd 工具来产生即可.


查看 Nginx 运行状态 输入地址http://192.168.8.1/NginxStatus/ 。输入验证帐号密码,即可看到类似如下内容:

Active connections: 328   server accepts handled requests   9309 8982 28890   Reading: 1 Writing: 3 Waiting: 324  
第一行表示现在活跃的连接数,第三行的第三个数字表示Nginx运行着。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/295374.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ERROR (ClientException): Unexpected API Error

ERROR (ClientException): Unexpected API Error ERROR (ClientException): Unexpected API Errorposted on 2016-02-03 11:12 秦瑞It行程实录 阅读(...) 评论(...) 编辑 收藏 转载于:https://www.cnblogs.com/ruiy/p/5179253.html

静态路由(一)

路由器的角色: 路由器是一种专门用途的计算机,在所有数据网络的运作中都扮演着极为重要的角色。路由器主要负责连接各个网络,它的功能有: l 确定发送数据包的最佳路径 l 将数据包转发到目的地 (路由器是多个 IP 网络…

火了!女教授把自己P成女娲,登上学术期刊封面

全世界只有3.14 % 的人关注了爆炸吧知识2020年4月,江苏师范大学化学与材料科学学院副院长石枫教授在 Chinese Journal of Chemistry 上发表了题为 Axially Chiral Aryl-Alkene-Indole Framework: A Nascent Member of the Atropisomeric Family and Its Catalytic A…

Binding在WPF中的使用

闲来无事,不想打DOTA,在这里小小研究下wpf中关于Binding的东西。 咯咯 在我们印象中,Binding的意思是“绑定”,这个“绑”大概取自于Bind这个单词吧,这么理解的话就是以音译英了,没什么实际意义。 Bind这个…

WPF 模仿IconPacks库写图标按钮

先上原链接,一个很不错的wpf图标库 : https://github.com/MahApps/MahApps.Metro.IconPacks提供了大量的图标可以用,如下图:(部分截图)简单分析了一下代码,并模仿它写一个图标类和简单的使用示例&#xff1…

java线程死锁 cpu 100%_一文学会Java死锁和CPU 100% 问题的排查技巧

做一个积极的人编码、改bug、提升自己我有一个乐园,面向编程,春暖花开工欲善其事,必先利其器00 本文简介作为一名搞技术的程序猿或者是攻城狮,想必你应该是对下面这两个问题有所了解,说不定你在实际的工作或者面试就有…

3D版的TagView,效果很赞

在gitHub看到的,感觉效果不错。 看看效果: Demo:http://download.csdn.net/detail/u012808234/9426716

Nginx配置相关结构划分的技巧和禁止IP访问

Nginx配置相关结构划分的技巧原文来自:http://developer.51cto.com/art/201003/190953.htm Nginx配置需要一定的技巧,我们在不断的使用和维护中就会发现这些,接下来就向大家介绍下有关Nginx配置的相关技巧。我目前的Nginx配置是拆散的&#x…

5部高分学科纪录片,在家也能受益良多!

全世界只有3.14 % 的人关注了爆炸吧知识▌导读本文为同学们整理了5部高分经典学科纪录片,这不仅是课堂学习的补充与延伸,更是开拓视野、激发学习内驱力的绝佳利器。建议收藏!(关注视频号少年数学家,呈现最直观的数学&a…

ubuntun中文读书笔记

在Linux中,所有设备都是用文件名来表示的。Linux中只有文件和目录,所有的文件和目录都以倒树状结构挂载在”/”(根目录)目录下。在Linux中如果要执行以命令可以通过 # 命令名 [-选项] 参数。在命令名、选项或者参数之间都是至少要有一个空格,…

开发Android应用 提升性能的小技巧

前  言 2015年,Android OS 目前在手机操作系统的市场占有率已达59%,权威机构预计,Android市场占有率在2016年将达到63%,由于Android的开放性,未来占有率还将不断增加,Android的NDK支持C/C语言&#xff0c…

SQL Server 中使用 Try Catch 处理异常

1 CREATE TABLE ErrorLog(2 errNum INT,3 ErrSev NVARCHAR(1000),4 ErrState INT,5 ErrProc NVARCHAR(1000),6 ErrLine INT,7 ErrMsg NVARCHAR(2000)8 )9 10 CREATE PROCEDURE ProcErrorLog 11 AS 12 BEGIN 13 SELECT 14 ERROR_NUMBER() AS ErrNum,--返回导致运…

Hibernate 对象的三种状态

Hibernate 对象的三种状态 瞬时(transient): 由new操作符创建,且尚未与Hibernate Session关联的对象被认定为瞬时(Transient)的。瞬时(Transient)对象不会被持久化到数据库中,也不会…

升级Jenkins镜像,支持.NET6.0

(寒天催日短,风浪与云平)书接上文,上回咱们说到了《【Blog.Core开源】完成升级.NET 6.0》,只是代码层面的升级,今天趁着周末正好把生产环境也升级下(大家可以酌情升级哟)。过程很简单…

女朋友来大姨妈怎么办?

1 医生的工伤怎么算?(素材来源网络,侵删)▼2 大风车呀吱悠悠的转!(via:草多南)▼3 买了个丑酸奶!▼4 和老爸讨论谈恋爱(via:张子乐_&#xff0…

[转]android 获取手机GSM/CDMA信号信息

本文转自:http://software.intel.com/zh-cn/blogs/2011/12/16/android-gsmcdma/ 在Android中我们常用的轻松获取WIFI信号列表,那如何获取CDMA或者GSM的手机信号呢?系统提供了TelephonyManager类,此类非常丰富,基本你所…

数码管流动显示(自己的单片机)

/********************************************************************************** * 标题: 试验数码管上显示数字( 单片机直接实现位选 共阴极) * * * * …

Hibernate懒加载

在Hibernate框架中,当我们要访问的数据量过大时,明显用缓存不太合适, 因为内存容量有限 ,为了减少并发量,减少系统资源的消耗,这时Hibernate用懒加载机制来弥补这种缺陷,但是这只是弥补而不是用…

迪拜“烧掉800亿”造了座烂尾岛,奇葩建筑惊呆网友:有钱人的世界,我不懂!

全世界只有3.14 % 的人关注了爆炸吧知识来源:普象工业设计小站天呐!最新消息阿布扎比酋长国又发现220亿桶非常规可采石油让原本富有的国家更加钱上有钱尤其是它的兄弟国——迪拜简直“豪”无人性耗资800亿美元的“世界岛”惨成全球最大烂尾项目竟没有表示…

英特尔收购威盛X86业务 兆芯何去何从

日前,英特尔公司以1.25亿美元收购威盛麾下Centaur 公司的x86业务。Centaur 是威盛的一家子公司,20多年前,威盛依靠数笔收购获得了x86授权,开发了数款X86芯片,由于性能与英特尔和AMD差距太大,威盛的X86 CPU在…