启动服务:nginx
退出服务:nginx -s quit
强制关闭服务:nginx -s stop
重载服务:nginx -s reload  (重载服务配置文件,类似于重启,但服务不会中止)
验证配置文件:nginx -t
使用配置文件:nginx -c "配置文件路径"
使用帮助:nginx -h

安装Nginx

[root@localhost wcw]# tar -zxvf nginx-1.12.2.tar.gz 
[root@localhost wcw]# cd nginx-1.12.2
[root@localhost nginx-1.12.2]# ./configure --prefix=/usr/local/nginx --with-http_mp4_module --with-http_flv_module --with-http_realip_module --with-http_ssl_module
[root@localhost nginx-1.12.2]# make
[root@localhost nginx-1.12.2]# make install

环境配置--->   export PATH=/usr/local/nginx/sbin:$PATH

开机启动---> (测时候不成功)

1. vim /etc/init.d/nginx   # 创建开机启动文件

并且从官网copy脚本    http://wiki.nginx.org/RedHatNginxInitScript

nginx=”/usr/local/nginx/sbin/nginx” 修改成nginx执行程序的路径。

NGINX_CONF_FILE=”/usr/local/nginx/conf/nginx.conf” 修改成配置文件的路径。

2、保存脚本文件后设置文件的执行权限

chmod a+x /etc/init.d/nginx

3、设置终端模式开机启动:

chkconfig nginx on

1 . 以下为Nginx 跟配置文件架构:


user  nginx;
worker_processes  4;events{# events 块.....
}http  #http块
{    .....  # http全局快server # server块{.... server   #server全局块location  [PATTERN]     #location块{.....}location  [PATTERN]     #location块{       .....}   }server # server块{.... server   #server全局块location  [PATTERN]     #location块{.....}location  [PATTERN]     #location块{       .....}   }upstream xxoo{负载均衡模块}...     #http全局块}# stream段的配置要与http段在同级目录。此处引用的为官方nginx说明配置。
stream
{upstream xxoo {}server{}}

1、全局块:配置影响nginx全局的指令。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成worker process数等。

2、events块:配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。

3、http块:可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。

4、server块:配置虚拟主机的相关参数,一个http中可以有多个server。

5、location块:配置请求的路由,以及各种页面的处理情况。


example------

########### 每个指令必须有分号结束。#################
#user administrator administrators;  #配置用户或者组,默认为nobody nobody。
#worker_processes 2;  #允许生成的进程数,默认为1
#pid /nginx/pid/nginx.pid;   #指定nginx进程运行文件存放地址
error_log log/error.log debug;  #制定日志路径,级别。这个设置可以放入全局块,http块,server块,级别以此为:debug|info|notice|warn|error|crit|alert|emerg
events {accept_mutex on;   #设置网路连接序列化,防止惊群现象发生,默认为onmulti_accept on;  #设置一个进程是否同时接受多个网络连接,默认为off#use epoll;      #事件驱动模型,select|poll|kqueue|epoll|resig|/dev/poll|eventportworker_connections  1024;    #最大连接数,默认为512
}
http
{include mime.types; #文件扩展名与文件类型映射表default_type application/octet-stream; #默认文件类型#charset utf-8; #默认编码server_names_hash_bucket_size 128; #服务器名字的hash表大小client_header_buffer_size 32k; #上传文件大小限制large_client_header_buffers 4 64k; #设定请求缓client_max_body_size 8m; #设定请求缓sendfile on; #开启高效文件传输模式,sendfile指令指定nginx是否调用sendfile函数来输出文件,对于普通应用设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络I/O处理速度,降低系统的负载。注意:如果图片显示不正常把这个改成off。autoindex on; #开启目录列表访问,合适下载服务器,默认关闭。tcp_nopush on; #防止网络阻塞tcp_nodelay on; #防止网络阻塞keepalive_timeout 120; #长连接超时时间,单位是秒#FastCGI相关参数是为了改善网站的性能:减少资源占用,提高访问速度。下面参数看字面意思都能理解。fastcgi_connect_timeout 300;fastcgi_send_timeout 300;fastcgi_read_timeout 300;fastcgi_buffer_size 64k;fastcgi_buffers 4 64k;fastcgi_busy_buffers_size 128k;fastcgi_temp_file_write_size 128k;#gzip模块设置gzip on; #开启gzip压缩输出gzip_min_length 1k; #最小压缩文件大小gzip_buffers 4 16k; #压缩缓冲区gzip_http_version 1.0; #压缩版本(默认1.1,前端如果是squid2.5请使用1.0)gzip_comp_level 2; #压缩等级gzip_types text/plain application/x-javascript text/css application/xml;#压缩类型,默认就已经包含text/html,所以下面就不用再写了,写上去也不会有问题,但是会有一个warn。gzip_vary on;#limit_zone crawler $binary_remote_addr 10m; #开启限制IP连接数的时候需要使用#定义本虚拟主机的访问日志access_log /var/log/nginx/ha97access.log access;#日志格式设定log_format access ‘$remote_addr – $remote_user [$time_local] “$request” ‘‘$status $body_bytes_sent “$http_referer” ‘‘”$http_user_agent” $http_x_forwarded_for’;#虚拟主机的配置server{#监听端口listen 80;#域名可以有多个,用空格隔开server_name www.ha97.com ha97.com;index index.html index.htm index.php;root /data/www/ha97;location ~ .*\.(php|php5)?${fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;include fastcgi.conf;}#图片缓存时间设置location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${expires 10d;}#JS和CSS缓存时间设置location ~ .*\.(js|css)?${expires 1h;}# 对 “/” 启用反向代理location / {proxy_pass xxoo;   # 分发到upstream 对应的xxoo中proxy_redirect off;proxy_set_header X-Real-IP $remote_addr;#后端的Web服务器可以通过X-Forwarded-For获取用户真实IPproxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;#以下是一些反向代理的配置,可选。proxy_set_header Host $host;client_max_body_size 10m; #允许客户端请求的最大单文件字节数client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数,proxy_connect_timeout 90; #nginx跟后端服务器连接超时时间(代理连接超时)proxy_send_timeout 90; #后端服务器数据回传时间(代理发送超时)proxy_read_timeout 90; #连接成功后,后端服务器响应时间(代理接收超时)proxy_buffer_size 4k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小proxy_buffers 4 32k; #proxy_buffers缓冲区,网页平均在32k以下的设置proxy_busy_buffers_size 64k; #高负荷下缓冲大小(proxy_buffers*2)proxy_temp_file_write_size 64k;#设定缓存文件夹大小,大于这个值,将从upstream服务器传}#设定查看Nginx状态的地址location /NginxStatus {stub_status on;access_log on;auth_basic “NginxStatus”;auth_basic_user_file conf/htpasswd;#htpasswd文件的内容可以用apache提供的htpasswd工具来产生。}}#分发请求模块upstream xxoo {#upstream的负载均衡,weight是权重,可以根据机器配置定义权重。weigth参数表示权值,权值越高被分配到的几率越大。hash $remote_addr consistent;  #一致性hash即使权重之和出问题也不会调度也不会乱套   可解决session 不一致问题server 192.168.80.121:80 weight=3 max_fails=3 fail_timeout=5s;server 192.168.80.122:80 weight=2 max_fails=3 fail_timeout=5s;server 192.168.80.123:80 weight=3 max_fails=3 fail_timeout=5s;}}  # stream段的配置要与http段在同级目录。此处引用的为官方nginx说明配置。
stream
{# 配置分发服务器#upstream mdmsocket {hash $remote_addr consistent;server emmin-1:8443 weight=5 max_fails=3 fail_timeout=30s;server emmin-2:8443 weight=5 max_fails=3 fail_timeout=30s;}## TCP server configuration#server {listen       28443 so_keepalive=on;proxy_connect_timeout 1s;proxy_timeout 300s;proxy_pass mdmsocket;}}

日志格式设置。

$remote_addr与$http_x_forwarded_for用以记录客户端的ip地址;

$remote_user:用来记录客户端用户名称;

$time_local: 用来记录访问时间与时区;

$request: 用来记录请求的url与http协议;

$status: 用来记录请求状态;成功是200,

$body_bytes_sent :记录发送给客户端文件主体内容大小;

$http_referer:用来记录从那个页面链接访问过来的;

$http_user_agent:记录客户浏览器的相关信息;

Centos Nginx配置详解相关推荐

  1. 分布式应用Nginx配置详解

    分布式应用Nginx配置详解 Nginx基本介绍 Nginx安装 安装依赖 安装openssl 安装pcre 安装zlib 安装Nginx Nginx负载均衡 负载均衡配置 失败重试配置 Nginx限 ...

  2. Nginx配置详解/代理服务的配置说明

    Nginx配置详解 序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的.从2004年发布至今,凭借开源的力量,已经接近成熟与完善. Nginx功能丰富,可作 ...

  3. 前端必备 Nginx 配置详解

    前端开发者必备的nginx知识 nginx在应用程序中的作用 解决跨域 请求过滤 配置gzip 负载均衡 静态资源服务器 nginx是一个高性能的HTTP和反向代理服务器,也是一个通用的TCP/UDP ...

  4. Nginx配置详解与示例

    Nginx配置详解 #定义Nginx运行的用户和用户组 user www www;#nginx进程数,建议设置为等于CPU总核心数. worker_processes 8;#全局错误日志定义类型,[ ...

  5. apache 更改默认网站目录 及 CentOS Apache配置详解

    apache 更改默认网站目录: 1:我们测试把默认网站目录改到root家目录下 新建/root/website目录 #mkdir -p /root/website #echo "websi ...

  6. nginx配置详解,完全卸载nginx, nginx https配置

    nginx 配置文件详解 文章目录 nginx 配置文件详解 Ubuntu nginx 目录结构 nginx 配置文件结构 默认nginx.conf( (1.18.0版本) location详解,pr ...

  7. nginx配置详解,nginx跨域问题

    文章目录 前言 更改hosts文件 新增velocityerp.top.conf配置文件 nginx配置header参数(解决跨域),接口方配置 nginx反向代理(解决跨域),发送方配置 nginx ...

  8. nginx配置详解1

    Nginx 配置文件详解 user nginx ; #用户 worker_processes 8; #工作进程,根据硬件调整,大于等于cpu核数 error_log logs/nginx_error. ...

  9. JAVA开发与运维(Nginx配置详解)

    对于Nginx的使用,最重要的是理解每个配置项的作用.所以一份详细的Nginx的配置对于JAVA开发和运维尤为重要.我们一般使用两个Nginx配置文件对Nginx进行配置,一个是公共文件nginx.c ...

最新文章

  1. 优雅地记录http请求和响应的数据
  2. Ajax 完整教程(转载)
  3. C语言读入文件全部内容的方法
  4. asp.net application,session,static 几种变量生命周期及用法 收藏
  5. 【数据结构】KMP算法(c语言)
  6. SPSS操作(四):系统聚类分析
  7. 排除MySQL中常见错误的实用招术
  8. select, poll, epoll
  9. 大数据在人工智能机器人的实践应用
  10. php checkbox表单提交,HTML表单Checkbox的值如何正确提交到PHP后台?,需要技巧
  11. hdu 5402 Travelling Salesman Problem (技巧,未写完)
  12. 《跟我学Shiro》——张开涛(链接)
  13. 接口测试如何生成随机的参数值
  14. Dell台式计算机BIOS放电,戴尔bios设置电池修复 笔记本电脑电池bios设置图解方法...
  15. mysql和5g有关系吗_5g和4g有何不同
  16. javascript 实现英文首字母大写
  17. STM32单片机和51单片机有何区别?
  18. python操作网页flash视频_selenium自动化过程中如何操作Flash动画
  19. DevOps落地实践:BAT系列:敏捷看板:iCafe vs Tapd
  20. 智能照明控制系统在城市夜景照明工程中的应用

热门文章

  1. Mac m1终端出现[进程已完成]问题
  2. Python数组排序
  3. Linux命令:useradd
  4. html实现自动打开微信,微信自动跳转第三方浏览器指定页面的实现方式
  5. 东华大学复试基础题 94 求字符串的起始位置
  6. python中字符串操作
  7. MATLAB算法实战应用案例精讲-【数模应用】MSE损失函数
  8. java作用域范围_JSP四大作用域属性范围
  9. ElasticSearch入门总结
  10. ARKit实现地球球体